instanceof用法_「JS很简单」JavaScript 基础之 instanceof操作符
最近开始在整理ES6/ES7/ES8/ES9的知识点(已经上传到 我的博客 上),碰到一些知识点是自己已经忘记(用得少的知识点),于是也重新复习了一遍。
这篇文章要复习的 instanceof 是我在整理过程中遇到的,那就整理下来吧,不然容易忘记。
要是哪里写得不妥,欢迎各位大佬指点。
1.定义
instanceof运算符用于测试构造函数的prototype属性是否出现在对象的原型链中的任何位置。 —— MDN
简单理解为:instanceof可以检测一个实例是否属于某种类型。
比如:
还可以在继承关系中用来判断一个实例是否属于它的父类型。
比如:
2.使用方法
语法为: object instanceof constructor。
- object : 需要测试的函数
- constructor : 构造函数
即:用instanceof运算符来检测constructor.prototype 是否存在参数object的原型链。
注意:
- a instanceof F 返回 true 以后,不一定永远都都返回为true,F.prototype属性的值有可能会改变。
- 原表达式a的值也会改变,比如 a.__proto__ = {}之后,a instanceof F就会返回false了。
检测对象是不是特定构造函数的实例:
3.实现instanceof
4.instanceof 与 typeof 对比
相同:
instanceof和typeof都能用来判断一个变量的类型。
区别:
instanceof 只能用来判断对象、函数和数组,不能用来判断字符串和数字等:
typeof :用于判断一个表达式的原始值,返回一个字符串。
一般返回结果有:
- number
- boolean
- string
- function(函数)
- object(NULL,数组,对象)
- undefined。
判断变量是否存在:
不能使用:
原因是如果变量未定义,就会报未定义的错,而应该使用:
5.参考资料
- MDN instanceof
- IBM instanceof
- js中typeof和instanceof用法区别
instanceof用法_「JS很简单」JavaScript 基础之 instanceof操作符相关推荐
- hssfworkbook 设置自适应宽度_「CSS很简单」CSS 实现宽高等比自适应容器
在最近开发移动端页面,遇到这么一个情况:当页面宽度 100% 时,高度为宽度一半,并随手机宽度变化依然是一半. 于是我们就需要实现一个宽度自适应,高度为宽度一半的容器. 这里先以高度为宽度一半为例,也 ...
- 比「你很美」还好的 3 个字
比「你很美」还好的 3 个字,你们觉得呢 public static const ↓↓↓
- 用python做简单的题目_「每日一练」巧用python做小学的数学题
原标题:「每日一练」巧用python做小学的数学题 很多的小学问题其实已经比较复杂了,我们运用传统的算法,可能会比较难以理解,这里我们可以巧用Python来完成一些小学题目的计算! 下边我们就一起来看 ...
- oracle split函数用法_「干货」Python字符串中的split方法
前面的文章我们有简单的介绍过什么是字符串.Python字符串的输入方式.Python字符串的拼接方法等今天我们主要分享一下Python字符串中split方法! Python字符串中的方法有很多种,其中 ...
- 逆向查找_「函数说12」数据逆向查找很复杂?match+index让你轻松搞定
EXCEL进阶课堂 · 函数说 持续更新,这是第12篇教程. 欢迎各位小伙伴转发.点赞.讨论,更欢迎私信获取练习素材,刻意练习才能学有收获. 第12讲:如何轻松的实现数据逆向查找--match+ind ...
- 背景宽高随文本变化_「只要功夫深 不用关键帧」之文本图层小技巧
「只要功夫深 不用关键帧」将不定期更新一些AE表达式和脚本的奇技淫巧,希望能给大家带来一些启发. 上周有朋友遇到这么个问题: 对一段文字,不管文字长度如何变化,想让背景到文字的边距始终保持不变,在 A ...
- python断点调试_「Python调试器」,快速定位各种疑难杂症!!!
在很多的编辑器其实都带着「调试程序」的功能,比如写 c/c++ 的 codeblocks,写 Python 的 pycharm,这种图形界面的使用和显示都相当友好,简单方便易学,这个不是我这篇文章要讲 ...
- layui 表格数据源_「WPS办公助手」表格数据录入太慢?这个好用的技巧,轻松帮你搞定...
日常使用表格时,常常会需要「数据查找录入」,虽然看似简单,但操作起来并不方便. 比如说下方表格中,右侧的信息对应表,需要在左侧的人员信息表查找并录入对应的数据,要怎么做呢? 肯定会有人觉得:就这么点数 ...
- python中字符型用什么表示_「小白学Python」Python中最常用的数据类型:字符串
Python中有6个标准数据类型,分别是:Number(数值).String(字符串).List(列表).Tuple(元组).Sets(集合).Dictionary(字典). 其中,String(字符 ...
最新文章
- 《Microsoft Sql server 2008 Internals》读书笔记--第九章Plan Caching and Recompilation(10)
- 算力觉醒后,智慧距离勃发就只差一个想法
- 服务器,工作站和终端机
- python自动创建目录_python自动目录环境
- sourceInsight4 破解笔记(完美破解)
- Android中SQLiteDatabase操作【附源码】
- visualsvn php,VisualSVN 手动记录访问日志
- Spark入门必读:核心概念介绍及常用RDD操作
- sshd被攻击的自动防御方法v2
- ssis sql_使用sp_help_revlogin和SSIS传输登录任务将SQL登录名传输到AG的辅助副本
- 郁闷的五角大楼:100亿美元“JEDI”云服务采购,却遭受云厂商和国会的双重抗议...
- @RequestBody 接收数组、List 参数、@Deprecated 标记废弃方法
- shell编程(精华总结版)
- jquery的语法结构包括哪几部分?_食品包装设计包括哪几个基本部分?
- 一款度盘高速下载工具
- 第四章: 元语言抽象
- 十进制进制法_十进制转换成二进制及二进制转换成十进制是如何转换的?
- STM32串口通信程序模拟超市打印机工作-使用接收中断、空闲中断、校验中断
- 小记 xian80 坐标转换 wgs84
- csdn博客文章设置为隐私模式发布之后看不到的问题