js中关于typeof与instanceof的区别讲解
程序员文章站
2022-05-18 11:08:27
最近在看《高程 三》,看到书中一些例子,就想到typeof和instanceof的区别。
众所周知,js数据类型可分为基本数据类型和引用数据类型:基本类型是保存在栈内存中的简单数...
最近在看《高程 三》,看到书中一些例子,就想到typeof和instanceof的区别。
众所周知,js数据类型可分为基本数据类型和引用数据类型:基本类型是保存在栈内存中的简单数据段,简言之也就是有单一字面量的值;引用数据类型指的是有多个值构成的对象。
那么typeof与instanceof的区别到底有什么区别呢?
typeof是一个用来检测变量数据类型的操作符,主要用来检测基本数据类型。为什么这么说呢?因为它可以判断一个变量是字符串、数值、布尔值还是undefined,但是如果检测的变量是引用数据类型,可以返回object或者function,但不能细致地分出是array还是regexp。
而 instanceof主要的目的就是检测引用类型,它可以判断出对象是array还是regexp。
总结起来就是:
typeof和instanceof都是用来检测变量类型的操作符,二者的区别在于typeof一般是检测基本数据类型,而instanceof是用来检测引用数据类型。
上一篇: vue学习概述
推荐阅读
-
js中innerText/textContent和innerHTML与target和currentTarget的区别
-
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
-
微信小程序 image组件binderror使用例子与js中的onerror区别
-
js中null与空字符串""的区别讲解
-
关于Mysql存储引擎中InnoDB与Myisam的主要区别介绍
-
关于AOP在JS中的实现与应用详解
-
js中实例与对象的区别讲解
-
js中关于typeof与instanceof的区别讲解
-
JQuery中关于jquery.js与jquery.min.js的比较探讨
-
js中apply()和call()的区别与用法实例分析