console.log(u1.__proto__ === User.prototype) //true构造器实例之所有能够访问构造函数原型对象上的方法,是因为我们的实例对象也有一个属性:__proto__,它指向了构造函数的原型对象,它是一个非标准。这里我们就会存在一个方法的查找规则:1.优先实例查找本身的,如果有,直接使用2.如果实例没有这个方法,就去构造函数的原型对象上查找
constructor 主要用于记录该对象引用于哪个构造函数。它可以让原型对象重新指向原来的构造函数。
原型对象的 constructor 是 构造函数。构造函数的 prototype 是原型对象。
JS成员查找机制当访问对象的某个方法或者属性时,先在自己的构造函数中寻找,如果没有,就在自己的原型中寻找,如果还是没有,就找原型的原型,一直找到object的原型,这样形成了一条链称之为原型链
// toString()方法按照原型链的顺序,一级一级查找,直到找到或者没有为之,没有结果就是undefined .就近原则。
欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/) | Powered by Discuz! X3.4 |