每个函数都有一个prototype的属性
其中,函数中自带的prototype属性中包含 constructor方法 和 _proto_ 属性
由图可知:
声明了一个ccc的函数
然后new了一个叫bo的函数
bo函数中的 constructor方法 =》(指向) ccc函数本身
bo 函数中的 _proto_ 属性 =》(指向) ccc函数的prototype 即ccc原型
举两个例子:
[1,2,3,4] instanceof Array === true; //result : true
new Object() instanceof Array === true; //result:false
instanceof 要求左边是一个对象,右边是一个函数or 构造器
它会判断右边这个函数的prototype属性 是否出现在左边这个对象的原型链上。
相当于判断 Array.prototype 是否在 [1,2,3,4]._proto_ 上