shengq666 / sheng-study

个人学习总结与代码知识点
1 stars 0 forks source link

15、instanceof #15

Open shengq666 opened 4 years ago

shengq666 commented 4 years ago

instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上。

function instance_of(L, R) {
  //L 左表达式,R 右表达式
  var O = R.prototype; // 取 R 的显示原型
  L = L.__proto__; // 取 L 的隐式原型
  while (true) {
    if (L === null) return false;
    if (O === L)
      // 这里重点:当 O 严格等于 L 时,返回 true
      return true;
    L = L.__proto__;
  }
}