看教程学到高级js编程 提到原型对象和对象原型,发现一个小问题
代码如下:
function Star(uname, age) {
this.uname = uname
this.age = age
}
Star.prototype = {
constructor: Star,
sing: function () {
console.log('我会唱歌')
},
movie: function () {
console.log('我会演电影')
}
}
var ldh = new Star('刘德华', 18)
var zxy = new Star('张学友', 19)
console.log(Star.prototype)
我如果不用constructor:Star依然可以正常用时 ldh.uname age和sing movie方法,我知道如果没有constructor:Star
那么,Star.prototype就没有constructor(被Star.prototype这行代码覆盖掉了),我不理解的是,我能够正常使用ldh zxy 的对象和方法为什么还要重新,在prototype中constructor:Star呢?