本文共 427 字,大约阅读时间需要 1 分钟。
instanceof 的原理是什么
- MDN的instanceof的解释
instanceof 运算符用于测试构造函数的 prototype 属性是否出现在对象原型链中的任何位置
- 解释:假如 A instanceof B,那么A必须是一个对象,B必须是一个合法的js函数(构造函数),在这两个条件都满足的条件下,判断B的prototype属性指向的原型对象(B.prototype)是否在对象A (构造函数的实例对象)的原型链上 (A.proto);如果在,则为true,如果不在,则为false
- 区分构造函数,
- 构造函数的
prototype
指向原形对象 - 构造函数的实例的
__proto__
也指向构造函数的原型对象 - 要判断 p1 instanceof Object 的真假:判断 B 的 prototype 属性指向的原型对象(B.prototype)是否在对象 A 的原型链上。如果在,则为 true;如果不在,则为 false。
下面是具体的作者解析
转载地址:http://lqwni.baihongyu.com/