直接上代码
//第一种将父级实例化对象直接赋给子集的原型链 实现继承
function Parent(array){
this.array = array;
this.color = "red";
this.size = {width:'300px',height:"300px"};
}
function Child1(){
this.border = '1px solid ' + this.color;
}
//子集可以继承父级的属性和方法
Child1.prototype = new Parent();
var child1 = new Child1();
console.log(child1.border);//1px solid red
// 第二种通过call 或者 apply实现继承
function Child2(){
Parent.apply(this,[{'name':'zhangsan'}]);
this.border = '1px solid ' + this.color;
console.log(this.array);//{'name':'zhangsan'}
}
var child2 = new Child2();
console.log(child2.border);//1px solid red
console.log(Parent.prototype.isPrototypeOf(child1));//true
console.log(child2.hasOwnProperty('size'));//true
console.log(child1 instanceof Child1);//true