其他分享
首页 > 其他分享> > js高级-对于instanceof的探讨

js高级-对于instanceof的探讨

作者:互联网

1.instanceof()是如何判断的?

*表达式  A instanceof B 

A 为实例对象 B为构造函数(对象)

*判断标准 如果B函数显式的原型对象(注意只看b.protootype是否在a原型链上)在A对象的原型链上(有交叉),则返回true/否则false

 

例如对 Object instanceof Object 的结果true

前者作为一个对象实例,他是function的实例,它的_proto_ === function.prototype 而function.prototype是一个空的object实例对象,它的_proto_指向object函数原型

后者它作为一个object()构造函数,他的.prototype执行object函数原型

所以可以判断为true

 

要点在于,实例对象走隐式原型链,构造函数走显式原型链,如果两者皆是则两个属性都需要考虑

标签:instanceof,对象,object,探讨,js,实例,原型,构造函数
来源: https://www.cnblogs.com/zuobolan/p/15750828.html