文档章节

js 的prototype 属性 实现类的继承 和扩展

kubei
 kubei
发布于 2019/12/13 13:55
字数 218
阅读 15
收藏 0

非常有趣的一个概念。

通过prototype 属性,实现了js的类继承和扩展;

 //定义一个 基本列表类
var FileList = function(options) {
   this.initialize(options)
}

FileList .prototype = {

    book_name : 'book',
    book_sns : '0001',
    initialize: function(options){
             options = options || {};
    },
    totalBooks: function(){
         console.log(" total 100 ")
    },
    showList : function(){
           console.log('this is FileList showList function')
    }

}

//定义一个 特殊类
var wenxueList = function(options){
 this.initialize(options)
}

//继承和扩展 FileList

wenxueList .prototype = $.extend({},FileList.prototype ,{

     book_bank : 'test book', //新增属性
     
     initialize: function(options){
             //调用父类 FileList 的初始化方法
            FileList.prototype.initialize.apply(this, arguments);
     },
     //覆盖 FileList 的 showList 方法
    showList : function(){
           console.log('this is wenxueList showList function')
    }
} );

//这样 wenxueList 类 同时有了 FileList 的所有属性和方法;
// 自己又可以 对这些属性和方法 改变和增加。

 

© 著作权归作者所有

kubei
粉丝 5
博文 36
码字总数 15723
作品 0
桂林
后端工程师
私信 提问
【Javascript】- Prototype 原型

JS Prototype 原型 prototype:原型:如果对象B是建立在对象A的基础上,那么A为B的原型,类似Java里面的父类和子类的关系,B不仅可以使用A定义的属性和方法,还可以进行额外的功能扩展,经常...

ZeroneLove
2019/03/01
14
0
JavaScript继承详解(二)

文章截图 - 更好的排版 这一章我们将会重点介绍JavaScript中几个重要的属性(this、constructor、prototype), 这些属性对于我们理解如何实现JavaScript中的类和继承起着至关重要的作用。 ...

solu
2010/12/22
241
0
前端基本功(七):javascript中的继承(原型、原型链、继承的实现方式)

1. js的继承机制 javascirpt没有"子类"和"父类"的概念,也没有"类"(class)和"实例"(instance)的区分,全靠一种很奇特的"原型链"(prototype chain)模式,来实现继承。继承意味着复制操作......

大家都叫我四姨
2019/06/18
0
0
JS核心基础知识总结(一)——原型和继承

原型/原型链 JS是一门基于原型实现继承的语言。那么,什么是原型?基于原型实现的继承又是怎么一回事? 原型(prototype),根据字面意思,可以理解为一件事物的模板。比如iPhone的原型是以前...

geeksam
2019/09/28
0
0
JS中的prototype的一些理解

JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点: 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是...

Doublec
2015/05/14
70
0

没有更多内容

加载失败,请刷新页面

加载更多

Kettle自定义jar包供javascript使用

我们都知道 Kettle 是用 Java 语言开发,并且可以在 JavaScript 里面直接调用 java 类方法。所以有些时候,我们可以自定义一些方法,来供 JavaScript 使用。 本篇文章有参考自:https://www...

CREATE_17
昨天
102
0
处理CSV文件中的逗号

我正在寻找有关如何处理正在创建的csv文件的建议,然后由我们的客户上传,并且该值可能带有逗号(例如公司名称)。 我们正在研究的一些想法是:带引号的标识符(值“,”值“,”等)或使用|...

javail
昨天
79
0
如何克隆一个Date对象?

将Date变量分配给另一个变量会将引用复制到同一实例。 这意味着更改一个将更改另一个。 如何实际克隆或复制Date实例? #1楼 简化版: Date.prototype.clone = function () { return new ...

技术盛宴
昨天
73
0
计算一个数的数位之和

计算一个数的数位之和 例如:128 :1+2+8 = 11 public int numSum(int num) { int sum = 0; do { sum += num % 10; } while ((num = num / 10) > 0); return sum;......

SongAlone
昨天
124
0
为什么图片反复压缩后普遍会变绿,而不是其他颜色?

作者:Lion Yang 链接:https://www.zhihu.com/question/29355920/answer/119088684 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 业余版概要:安卓的...

shzwork
昨天
81
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部