4.原型的动态性
function Person3() {}
var friend = new Person3();
Person3.prototype = {
name: 'xiao0411',
age: 22,
sayName: function() {
console.log(this.name);
}
}
console.log(friend.__proto__);
friend.sayName(); //TypeError: friend.sayName is not a function
这里之所以报错是因为friend指向的原型中不包含以该名字命名的属性。
重写原型对象切断了现有原型与任何之前已经存在的对象实例的联系,它们引用的依然是最初的原型。