js面向对象之组合继承
标签:
JavaScript
首先先上一段代码
function SuperType(name) { //父函数的自定义属性 this.name = name; this.age = colors = ["red","orange","black"]; }; SuperType.prototype.sayName = function() { //父函数原型中定义的方法 console.log(this.name); };//定义子函数function SubType (name,age) { //子函数继承父函数的属性 //借用构造函数实现对实例属性的继承 SuperType.call(this,name); //子函数定义自己的属性 this.age = age; }//子函数继承父函数的方法//通过原型链对原型属性和方法的继承SubType.prototype = Object.create(SuperType.prototype); //下面注释的这种写法子类会具有父类实例的方法,不推荐 //SubType.prototype = new SuperType();SubType.prototype.constructor =SubType;//自定义子函数的方法SubType.prototype.sayAge = function() { console.log(this.age); }//测试var instance1 = new SubType("LLL","24"); instance1.colors.push("pink");console.log(instance1.colors);//"red,orange,black,pink"instance1.sayName;//"LLL"instance1.sayAge;//"24"//测试2var instance2 = new SubType("XXX","25");console.log(instance2.colors);//"red,orange,black"instance2.sayName;//"XXX"instance2.sayAge;//"25"
作者:前端来入坑
链接:https://www.jianshu.com/p/030b3d890850
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦