JS原型及原型链

构造函数创建对象
function Person() {

}
var person = new Person();
person.name = 'Kevin';
console.log(person.name) // Kevin

1.每个函数都有一个 prototype 属性指向他的原型;
2.每一个JavaScript对象(除了 null )都具有的一个属性,叫proto,这个属性会指向该对象的原型;
3.每个原型都有一个 constructor 属性指向关联的构造函数 实例原型指向构造函数;
4.实例原型本身也是一个JS对象,是对象就会有 proto属性,他的指向是 Object.prototype,Object.prototype指向null;

那通过构造函数创建的对象 => 函数原型 => Object.prototype => null 的指向,就是所谓的原型链;

评论