JS高级之探索instanceof

探索instanceof

  • instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上。
    简单来说 ,就是判断左边的对象是不是右边的实例
  1. instanceof是如何判断的?
  • 表达式: A(实例对象) instanceof B(构造函数)
  • 如果B函数的显示原型对象在A对象的原型链上,返回true,否则返回false

JS高级之探索instanceof

  1. Function是通过new 自己产生的实例

JS高级之探索instanceof

  • 常见面试题

练习一

JS高级之探索instanceof

练习二

JS高级之探索instanceof

除了f.b()找不到,其余都可以找到,具体思路如下图,根据隐式原型查找:
JS高级之探索instanceof