关于原型链的理解,遇到的问题
来源:5-5 instanceof 是基于原型链实现的

疆南星耀
2020-05-25
function a(){ this.name = 1; }
a instanceof Object;//true
a instanceof Function;//true
这两者都是返回true,是不是可以理解为 a在 Function 和 Object 的原型链上面?a.prototype.__proto__ === Object.prototype;//true
a.prototype.__proto__ === Function.prototype//false
Function.prototype.__proto__ === Object.prototype
根据上面的返回值,是不是可以理解为 a是从Object继承的,但不是从Function上继承的,而且Function也是继承于Object。这样的话 Function 和 a 是兄弟关系,继承于同一个父类。
那为什么上面通过instanceof 关键词搜索Function的时候,会显示在它的原型链上呢?
写回答
3回答
-
慕粉3871079
2021-03-08
a instanceof b
说明 b在a的原型链上,例如老师文中举的例子,打印xialuo 可以从__proto__中找到Studennt ,再往下是People》Object,那么Studennt,People,Object都在xialuo的原型链上。
20 -
慕粉3226790
2020-05-25
a instanceof Function 可以理解为Function 在a的原型链上,你刚好搞反了,Object同理
20 -
慕妹0460391
2022-03-16
a instanceof Function // true a.__proto__ === Function.prototype // true a.__proto__.__proto__ === Object.prototype //true
10
相似问题