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 相关文章推荐
js兼容标准的表格变色效果
Jun 28 Javascript
解析瀑布流布局:JS+绝对定位的实现
May 08 Javascript
将两个div左右并列显示并实现点击标题切换内容
Oct 22 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
jQuery点击其他地方时菜单消失的实现方法
Apr 22 Javascript
微信小程序 教程之数据绑定
Oct 18 Javascript
JavaScript实现自定义媒体播放器方法介绍
Jan 03 Javascript
详解微信小程序Page中data数据操作和函数调用
Sep 27 Javascript
javascript按钮禁用和启用的效果实例代码
Oct 29 Javascript
JS实现的贪吃蛇游戏完整实例
Jan 18 Javascript
微信小程序利用button控制条件标签的变量问题
Mar 15 Javascript
ES5和ES6中类的区别总结
Dec 21 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 empty函数报错解决办法
2014/03/06 PHP
php强大的时间转换函数strtotime
2016/02/18 PHP
Zend Framework框架教程之Zend_Db_Table_Rowset用法实例分析
2016/03/21 PHP
php 二维数组快速排序算法的实现代码
2017/10/17 PHP
在Laravel中实现使用AJAX动态刷新部分页面
2019/10/15 PHP
mailto的使用技巧分享
2012/12/21 Javascript
IE6/IE7中JavaScript json提示缺少标识符、字符串或数字问题处理
2014/12/16 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
2016/03/07 Javascript
关于JavaScript中事件绑定的方法总结
2016/10/26 Javascript
jQuery窗口拖动功能的实现代码
2017/02/04 Javascript
微信小程序 空白页重定向解决办法
2017/06/27 Javascript
基于Bootstrap表单验证功能
2017/11/17 Javascript
Vue.Draggable拖拽功能的配置使用方法
2020/07/29 Javascript
详解Typescript里的This的使用方法
2021/01/08 Javascript
[48:51]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第一场 11.28
2020/12/02 DOTA
python实现随机密码字典生成器示例
2014/04/09 Python
Python使用filetype精确判断文件类型
2017/07/02 Python
tensorflow实现加载mnist数据集
2018/09/08 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
opencv3/C++ 平面对象识别&透视变换方式
2019/12/11 Python
python之pymysql模块简单应用示例代码
2019/12/16 Python
pytorch中nn.Conv1d的用法详解
2019/12/31 Python
django执行数据库查询之后实现返回的结果集转json
2020/03/31 Python
Python 操作SQLite数据库的示例
2020/10/16 Python
基于 Python 实践感知器分类算法
2021/01/07 Python
CSS3实现红包抖动效果
2020/12/23 HTML / CSS
高级电工工作职责
2013/11/21 职场文书
安全生产检讨书
2014/01/21 职场文书
数控技术学生的自我评价
2014/02/15 职场文书
中秋客户感谢信
2015/01/22 职场文书
暂停营业通知
2015/04/25 职场文书
工程服务质量承诺书
2015/04/29 职场文书
担保贷款承诺书
2015/04/30 职场文书
学习焦裕禄观后感
2015/06/09 职场文书
关于开学的感想
2015/08/10 职场文书