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

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__
  }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容