对象冒充实现继承,原型链继承方法,以及组合继承模式

Posted aaron1tall

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对象冒充实现继承,原型链继承方法,以及组合继承模式相关的知识,希望对你有一定的参考价值。

function Person (){
    this.name=“张三”;
    this.run = function(){
        alert( this.name+‘在运动‘ )
    }
}
Person.prototype.work = function(){
    alert( this.name+‘在工作’ )
}
// web类 继承person类 原型链+对象冒充的组合继承模式
function web(){
    Person.call( this )  //  对象冒充实现继承
}
var w = new web()
web.run() // 会执行  对象继承可以继承构造函数里面的方法  
web.work() // 不会执行   对象继承可以继承构造函数里面的方法  但是无法继承原型链上面的方法跟属性
 // web.protype = new Person()// 原型链继承方法 缺点 实例化子类的时候无法给父类传参
 
//  组合继承模式
function Person (name){
    this.name=name;
    this.run = function(){
        alert( this.name+‘在运动‘ )
    }
}
Person.prototype.work = function(){
    alert( this.name+‘在工作’ )
}
function web(name){
    Person.call(this,name)
}
web.protype = new Person()
 

以上是关于对象冒充实现继承,原型链继承方法,以及组合继承模式的主要内容,如果未能解决你的问题,请参考以下文章

“工厂构造原型” 设计模式

js原型继承的几种方式

282 继承模式:原型链继承 : 得到方法,借用构造函数 : 得到属性,组合,new一个对象背后做了些什么

js原型继承的几种方式

JavaScript继承基础讲解,原型链借用构造函数混合模式原型式继承寄生式继承寄生组合式继承

详解Javascript的继承实现