13. instanceof 的原理

  1. instanceof 的原理
    问题一:instanceof 的原理是什么?

instanceof可以正确的判断对象的类型,因为内部机制是通过判断对象的原型链中是不是能找到类型的prototype。

我们也可以试着实现一下instanceof

function myInstanceof(left, right) {
let prototype = right.prototype
left = left.proto
while (true) {
if (left === null || left === undefined)
return false
if (prototype === left)
return true
left = left.proto
}
}
以下是对实现的分析:

首先获取类型的原型
然后获得对象的原型
然后一直循环判断对象的原型是否等于类型的原型,直到对象原型为null,因为原型链最终为null

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 10,736评论 0 21
  •   面向对象(Object-Oriented,OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意...
    霜天晓阅读 6,497评论 0 6
  • PNG 有PNG8和truecolor PNG PNG8类似GIF颜色上限为256,文件小,支持alpha透明度,...
    hudaren阅读 5,684评论 0 0
  • ECMAScript关键字 delete do else finally function in instance...
    doudou2阅读 3,996评论 0 0
  • 《寻旧梦》 诗 / 四林青竹 旧梦书塾怯退中,新怀烈志酒添功。 扪参历井穷辞岁,叶落飘零水自东。 《百尺楼•秋味...
    良人_望书归阅读 2,880评论 0 2

友情链接更多精彩内容