1:什么是构造函数(constructor)?
要想知道什么是构造函数,首先要明白普通函数与构造函数的区别。
//普通函数
var Parent = function() {
};
//此时Parent就是一个构造函数了,p1是它的实例
var p1 = new Parent();
2:分清什么是独有的
proto、 constructor属性是对象所独有的
prototype属性是函数独有的
函数也是一种对象,所以函数同样也有属性__proto__、 constructor
3:prototype属性
可以通过prototype给函数添加属性,这个函数的所有实例化对象,均可以继承我们通过它添加的属性。
使用方法:
函数名.prototype 而不是对象名
4:构造函数和原型对象的指向关系
p1.constructor 表示的是它的构造函数,p1本身是没有constructor方法的,是从p1的原型中找的。