javascript基于prototype实现类似OOP继承的方法


Posted in Javascript onDecember 16, 2015

本文实例讲述了javascript基于prototype实现类似OOP继承的方法。分享给大家供大家参考,具体如下:

这里要说明的是,公有属性(使用this.修饰符)可以被覆盖,私有属性(使用var 修饰符)不能被覆盖

子类不能访问父类的私有属性,父类的方法正常访问父类的私有变量。

function Vegetable(){
  this.taste='delicious';
  var a = 'I\'m Vegetable\'a!'
  this.fun1 = function(){
    alert('Vegetable fun1 doing...');
  }
  this.fun3 = function(){
    alert(a);
  }
}
function Celery(){
  var a = 'I\'m Celery\' a';
  this.color = 'green';
  this.taste = 'bad';
  this.fun1a = function(){
    alert('Celeryfun1 doing...');
  }
  this.fun2 = function(){
    alert('Celery fun2 doing...');
  }
  this.fun4 = function(){
    alert(a);
  }
}
Celery.prototype = new Vegetable();
var stick = new Celery();
var polymorphed = stick.taste;
//alert(polymorphed);
//alert(stick.color);
//stick.fun1();
//stick.fun2();
//stick.fun3();
stick.fun4();

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Javascript 浮点运算的问题分析与解决方法
Aug 27 Javascript
js整数字符串转换为金额类型数据(示例代码)
Dec 26 Javascript
node.js中Socket.IO的进阶使用技巧
Nov 04 Javascript
为什么Node.js会这么火呢?Node.js流行的原因
Dec 01 Javascript
JavaScript DOM元素尺寸和位置
Apr 13 Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
Jun 19 Javascript
JS 拦截全局ajax请求实例解析
Nov 29 Javascript
浅谈通过JS拦截 pushState和replaceState事件
Jul 21 Javascript
PHP 实现一种多文件上传的方法
Sep 20 Javascript
详细介绍RxJS在Angular中的应用
Sep 23 Javascript
jQuery实现的form转json经典示例
Oct 10 jQuery
一步一步实现Vue的响应式(对象观测)
Sep 02 Javascript
javascript数组克隆简单实现方法
Dec 16 #Javascript
Perl Substr()函数及函数的应用
Dec 16 #Javascript
javascript针对不确定函数的执行方法
Dec 16 #Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
Dec 16 #Javascript
js如何判断输入字符串长度
Dec 16 #Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
Dec 16 #Javascript
jQuery添加和删除指定标签的方法
Dec 16 #Javascript
You might like
PHP 删除一个目录及目录下的所有文件的函数代码
2010/05/26 PHP
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
JS实现程序暂停与继续功能代码解读
2013/10/10 Javascript
js格式化金额可选是否带千分位以及保留精度
2014/01/28 Javascript
深入分析escape()、encodeURI()、encodeURIComponent()的区别及示例
2014/08/04 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
jQuery实现本地预览上传图片功能
2016/01/08 Javascript
Bootstrap 附加导航(Affix)插件实例详解
2016/06/01 Javascript
jQuery获取file控件中图片的宽高与大小
2016/08/04 Javascript
解析NodeJs的调试方法
2016/12/11 NodeJs
JS实现密码框的显示密码和隐藏密码功能示例
2016/12/26 Javascript
javascript replace()第二个参数为函数时的参数用法
2016/12/26 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
快速搭建React的环境步骤详解
2017/11/06 Javascript
利用jquery如何从json中读取数据追加到html中
2017/12/01 jQuery
微信小程序实现人脸检测功能
2018/05/25 Javascript
Vue动态控制input的disabled属性的方法
2018/06/26 Javascript
angular4笔记系列之内置指令小结
2018/11/09 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
微信小程序多列表渲染数据开关互不影响的实现
2020/06/05 Javascript
[01:55]2014DOTA2国际邀请赛 BBC正赛第一天总结
2014/07/10 DOTA
[03:44]2015国际邀请赛选手档案—Cloud9.NoTail
2015/07/28 DOTA
python&MongoDB爬取图书馆借阅记录
2016/02/05 Python
Python实现图片转字符画的示例
2017/08/22 Python
Django中针对基于类的视图添加csrf_exempt实例代码
2018/02/11 Python
记一次python 内存泄漏问题及解决过程
2018/11/29 Python
详解利用python+opencv识别图片中的圆形(霍夫变换)
2019/07/01 Python
详解基于python的多张不同宽高图片拼接成大图
2019/09/26 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
大学生创业计划书的格式要求
2013/12/29 职场文书
五一家具促销方案
2014/01/10 职场文书
优秀党务工作者事迹材料
2014/05/07 职场文书
人力资源管理专业自荐信
2014/06/24 职场文书
补充协议书
2015/01/28 职场文书
董事长致辞
2015/07/29 职场文书
引用计数法和root搜索算法以及JVM中判定对象需要回收的方法
2022/04/19 Java/Android