概念:原型是构造函数制造出的对象的公有祖先,原型也是对象,是函数对象的一个属性。
* 构造函数自己身上有属性,首先取自己身上的属性
原型的增删改查
查
function Person() {
this.say = function() {
console.log('person');
}
}
Person.prototype.say = function() {
console.log('prototype');
}
var person = new Person();
person.say();
* 利用原型的特点,可以提取共有属性
改/增
function Person(name) {
this.name= name
}
var person = new Person('james');
//通过person.lastName = 'a';只是给person对象上添加一个lastName属性='a'
想要修改原型上的lastName属性,只能通过Person.prototype.lastName
删
删除一个对象没有的属性,返回true
原型一开始系统自带的属性,constructor,__proto__。
constructor可以手动修改(认贼做父)。
对象通过__proto__找到原型。