国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

js類式繼承與原型式繼承詳解

2019-11-20 10:17:04
字體:
供稿:網(wǎng)友

本文實例為大家分享了js類式繼承與原型式繼承相關(guān)代碼,供大家參考,具體內(nèi)容如下

1.js類式繼承

/* -- 類式繼承 -- *///先聲明一個超類function Person(name) {this.name = name;}//給這個超類的原型對象上添加方法 getName Person.prototype.getName = function() {return this.name;}//實例化這個超var a = new Person('Darren1')console.log(a.getName());//Darren1//再聲明類function Programmer(name, sex) {//這個類中要調(diào)用超類Person的構(gòu)造函數(shù),并將參數(shù)name傳給它Person.call(this, name);this.sex = sex;}//這個子類的原型對象等于超類的實例Programmer.prototype = new Person();//因為子類的原型對象等于超類的實例,所以prototype.constructor這個方法也等于超類構(gòu)造函數(shù),你可以自己測試一下,如果沒這一步,console.log(Programmer.prototype.constructor這個是Person超類的引用,所以要從新賦值為自己本身console.log(Programmer.prototype.constructor);/*function Person(name) {this.name = name;} */Programmer.prototype.constructor = Programmer;console.log(Programmer.prototype.constructor);/*function Programmer(name, sex) {Person.call(this, name);this.sex = sex;} *///子類本身添加了getSex 方法Programmer.prototype.getSex = function() {return this.sex;}//實例化這個子類var _m = new Programmer('Darren2', 'male');//自身的方法console.log(_m.getSex());//male//繼承超類的方法console.log(_m.getName());//Darren2

2.js原型式繼承

/* -- 原型式繼承 -- *///clone()函數(shù)用來創(chuàng)建新的類Person對象var clone = function(obj) {4var _f = function() {};//這句是原型式繼承最核心的地方,函數(shù)的原型對象為對象字面量_f.prototype = obj;return new _f;}//先聲明一個對象字面量var Person = {name: 'Darren',getName: function() {return this.name;}}//不需要定義一個Person的子類,只要執(zhí)行一次克隆即可var Programmer = clone(Person);//可以直接獲得Person提供的默認值,也可以添加或者修改屬性和方法alert(Programmer.getName())Programmer.name = 'Darren2'alert(Programmer.getName())//聲明子類,執(zhí)行一次克隆即可var Someone = clone(Programmer);

以上就是本文的全部內(nèi)容,希望對大家學習javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 吉隆县| 宜兴市| 无极县| 呼和浩特市| 长宁区| 望江县| 英吉沙县| 儋州市| 丰城市| 抚松县| 合山市| 昌宁县| 临潭县| 瓮安县| 寿光市| 康保县| 马山县| 清徐县| 湟中县| 明水县| 齐河县| 武威市| 长岛县| 庄浪县| 建瓯市| 龙口市| 弥勒县| 凉山| 阿拉善右旗| 南投市| 八宿县| 岑溪市| 宝鸡市| 德兴市| 莲花县| 平利县| 威宁| 北流市| 公主岭市| 扶沟县| 漳浦县|