原型链

每一个对象都有原型属性,那么对象的原型属性也会有原型属性,所以这样就形成了一个链式结构,我们称之为原型链。

每个对象都会有构造函数,每个构造函数都有原型对象,每个原型对象都是对象,都会有构造函数.....这样就会形成一个原型链

属性搜索原则

所谓的属性搜索原则,也就是属性的查找顺序,在访问对象的成员的时候,会遵循如下的原则:

  1. 首先在当前对象中查找,如果找到,停止查找,直接使用,如果没有找到,继续下一步
  2. 在该对象的原型中查找,如果找到,停止查找,直接使用,如果没有找到,继续下一步
  3. 在该对象的原型的原型中查找,如果找到,停止查找,直接使用,如果没有找到,继续下一步。
  4. 继续往上查找,直到查找到Object.prototype还没有, 那么是属性就返回undefied,是方法,就报错xxx is not a function

results matching ""

    No results matching ""