【JS】【基础】instanceof实现原理

2021-08-25  本文已影响0人  今夜相思又几许

instanceof主要用于判断R是否为L的父类,R表示instanceof右侧构造函数,L表示instanceof左侧需要对比的对象实例。instanceof的原理是比较L的原型链上是否有R的原型对象,如果存在,则返回true,否则返回false。可以用以下代码进行表示

function instanceOf(L, R) {
  R = R.prototype
  L = L.__proto__
  while (true) {
    if (L === null) {
      return false
    }
    if (L === R) {
      return true
    }
    L = L.__proto__
  }
}
上一篇 下一篇

猜你喜欢

热点阅读