一、
- typeof([val]):用来检测数据类型的运算符
- instanceof:用来检测当前实例是否隶属于某个类
- constructor:基于构造函数检测数据类型
- Object.prototype.toString.call():检测数据类型最好的方法
二、今天只讲第一种typeof()
基于typeof()检测,typeof返回的是一个字符串,字符串中包含对应的类型
console.log(typeof(12));//=>"number"
console.log(typeof("name"));//=>"string"
console.log(typeof(true));//=>"boolean"
console.log(typeof(undefined));//=>"undefined"
typeof的局限性
用typeof不能区分null
typeof(null)=》object
用typeof不能区分出当前值是数组对象,普通对象还是正则对象,因为都会返回“object”
三、练习题
以下代码会以什么顺序执行?最后执行结果是什么类型?
console.log(typeof typeof typeof ([]))//=>"string"