构造器函数,通过在构造器函数前面加new关键字,告诉js像使用构造器函数一样实例化一个新对象,并且对象成员由改函数定义
//构造器
function Car(name,age){
this.name=name;
this.age=age;
this.info=function(){
console.log(this.name+","+this.age);
}
}
var car=new Car('zhansan',15);
如上代码所示是js的构造器模式,然而
问题一:它使继承变得困难
问题二: info这样的函数,为每个car实例分别重新做了定义,这不是理想的,我们的方法应该实现共享.
function Car(name,age){
this.name=name;
this.age=age;
}
Car.prototype.info=function(){
return this.name+","+this.age;
}
var car=new Car('qingli',16);
通过原型构造器的方式,就可以实现,新创建一个对象后,共享原型的实例属性。