1.prototype:是一个对象,作用是共享方法,节约内存。
Star.prototype.sing=function(){
console.log('我爱唱歌’);
}
console.log(demo.sing===demo.sing);--------true
2.对象都会有一个_proto__属性指向构造函数的prototype对象。之所以我们能够使用构造函数prototype对象的属性和方法,就是因为对象的_proto_原型的存在
_proto_对象原型等价于原型对象prototype
Star.prototype={
//很多情况下,我们需要手动的利用constructor这个属性指向构造函数
constructor:Star,
sing:function(){
console.log(‘我爱唱歌’);
},
movie:function(){
console.log(‘我爱演电影’);
}
}
var ldh=new Star('刘德华',18);
var lzs=new Star('李钟硕',18);
console.log(Star.prototype.constructor);
console.log(ldh.__proto__.constructor);
console.log(Star.prototype===ldh.__proto__);
console.dir(Star);