首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

JS魔法堂:再识instanceof

一、Breif                                  大家都知道instanceof一般就是用来检查A对象是否为B类或子类实例。...那问题是JS中没有类概念更没有类继承概念(虽然有构造函数),那么instanceof到底是怎样判断A对象是B构造函数实例呢?本文将对此作分析记录,以便日后查阅。...ShiftExpression实际值(GetValue(Evaluate(ShiftExpression)))必须为[object Function],否则就抛TypeError异常; 2. instanceof...上面的定义看得不太明白,我们把它翻译成JS实现吧 // IE5.5~9下,由于无法通过__proto__访问对象Internal Property [[Prototype]],因此该方法无效 ;(function...五 、Conclusion                           之前看了很多讲述instanceof文章但始终对它理解得不透彻,看来还是看Spec比较实在。

84190

JS 原生方法原理探究(五):如何实现 instanceof

这是JS 原生方法原理探究系列第五篇文章。本文会介绍如何实现 instanceof 方法。 typeof 操作符返回一个表示数据类型字符串,它可以应付常规场景下数据类型判断。...但使用 instanceof 之后,就一目了然了: console.log(obj1 instanceof F1) // true console.log(obj1 instanceof F2)...// false console.log(obj2 instanceof F2) // true 根据 MDN 描述: instanceof 运算符用于检测构造函数 prototype 属性是否出现在某个实例对象原型链上...instanceof 运算符有两个操作数,左操作数通常是一个实例对象,它类型可以是对象或者函数,也可以是基本类型(这种情况下不会报错,但总返回 false),右操作数通常是一个可调用(callable...那么 instanceof 实现原理是什么呢?

1.8K20

JS手撕(一)    类型判断、instanceof、数组去重

JS手撕(一)    类型判断、instanceof、数组去重 前言 看这篇文章小伙伴,建议看完每一节,都尝试自己手撕一遍,最好就是弄懂原理后再开始手撕(不要边看边手撕,会产生依赖),本人就是看别人文章后手撕...(因为手撕题型记不住,还有一些大佬有很有意思解法) 类型判断 有用过JS一段时间小伙伴应该对typeof比较属性,我们需要进行类型判断时候一般都会先想到它。...但是呢,它有一个很大局限性,比如如果是null、array都会被认为是object,array是因为是一个特殊对象,而null则是因为JS诞生以来null实现导致。...上面已经有小小提到typeof,那么当然不能拉下它好兄弟instanceof啦。...开始手撕之前,先复习一下instanceof究竟是啥。 MDN上介绍已经很简单易懂了:instanceof运算符用于检测构造函数prototype属性是否出现在某个实例对象原型链上。

1.7K10

typeof和instanceof区别

JS里面判断数据类型,一般用typeof或者instanceof两种方法,那么,两者到底有什么区别呢? 1. typeof typeof用于基本数据类型类型判断,返回值都为小写字符串。...instanceof 利用原型链继承关系做判断,它针对对象类型(格式:对象 instanceof 构造函数)。...“尽管instanceof 运算符右操作数是构造函数,但计算过程实际上是检测了对象继承关系,而不是检测创建对象构造函数 ”(摘自《JavaScript权威指南》) 2.1 原型对象 一旦创建一个新函数...prototype.png 这时根据用instanceof做类型检测,结果如下: instance instanceof SubType === true instance instanceof SuperType...小结 typeof用于基本数据类型类型判断,无法甄别对象具体类型(除了function); instanceof用于对象类型判断,基于原型链上继承关系; (感谢@文兴发现,文章于2017-3-6

79440

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券