检测数据类型的四种方法

一、数据类型:

1、基本数据类型:String、Number、Boolean、Null、Undefined、Symbol 、BigInt
2、引用数据类型:Object、Array、Function、Date、RegExp

二、检测数据类型的四种方法
1.typeof检测

 特点:typeof只能检测基本数据类型(除了null),不能准确的检测引用数据类型。

   object、array、date、regExp、null 都会返回object

2.instanceof检测

 特点:instanceof的本质作用是判断某个对象是由哪个类(构造函数)产生的,所以只能用在引用数据类型上,如果在原型上找到返回true,

   所以用它可以区分是引用类型还是基本类型数据;不能判断null,undefined
 
3.constructor检测

 特点:不能判断null,undefined,其它的都可以,由于类的constructor可以随意更改,此时会存在判断不准确的问题

4.Object.prototype.toString.call() 检测

特点:该方法是最准备的检测数据类型的方法。由于Object.prototype.toString()本身允许被修改,所以需要调用
Object.prototype.toString.call(arg)来判断arg的类型,call将arg的上下文指向Object,所以arg执行了Object的toString方法。


 

posted @ 2023-07-12 21:37  IT小姐姐  阅读(1279)  评论(0编辑  收藏  举报