1、构造函数
function Person(){
}
2、创建实例
const person = new Person();
3、原型对象
Person.prototype.name = 'ivy';
Person.prototype.will = 'become excellent';
4、三者关系
(1)、只要创建了一个新函数,就会根据一组特定的规则为该函数创建一个prototype属性。这个属性指向函数的原型对象;
(2)、所有原型对象都会获得constructor属性,这个属性指向prototype属性所在函数的指针,即构造函数
(3)、实例对象有属性proto指向原型对象(only firefox、safary、chrome support)
5、isPrototypeOf()
Person.prototype.isPrototypeOf(person) // return true
6、Object.getPrototypeOf()
该方法返回实例原型对象
Object.getPrototypeOf(person) === Person.prototype
7、hasOwnProperty()
该方法检测一个属性是否存在于实例中
person.hasOwnProperty('name')
8、原型与in操作符
检测属性是否存在于原型中或实例中
9、hasPrototypeProperty()
该方法检测属性是否存在于原型中
10、更简单的原型语法(对象字面量的形式)
Person.prototype = {
name: 'ivy',
age: '25',
will: 'become excellent'
}
网友评论