检测数据类型的四种方法

  • 检测数据类型的四种方法已关闭评论
  • 76 次浏览
  • A+
所属分类:Web前端
摘要

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

一、数据类型:

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方法。