function Person(name){ this.name = name; } var lilei = new Person("Lilei"); lilei.constructor === Person; // true lilei instanceof Person; // true lilei instanceof lilei.constructor; // true lilei instanceof Person.prototype.constructor; // true
上面这段代码表明: prototype对象的constructor属性指向当前实例对象的构造函数.
也就是说, constructor属性其实是反映了实例对象与构造函数之间的关系, 就好比是给孩子做DNA鉴定, 我们可以通过constructor这个属性来检测当前实例对象是哪个构造函数"生"的.