JS的数据类型检测,Number,typeof
2020-06-07 本文已影响0人
小柠有点萌
Number
Number(true) ==>1
Number(false) ==>0
Number(0) ==>0
Number("12") ==>12
Number("") ==>0
Number([]) ==>0
Number() ==>0
Number(undefined) ==>NaN
Number(null) ==>报错
Number("qww111")/Number("111qww") =>NaN
总结 Number 字符串从左到右转换成数字,遇到非数字,NAN,其中true默认为1,false默认为0.空字符串,空数组默认为0
1.typeof[val] 用来检测数据类型的运算符
typeof
基于typeof检测出来的结果
1.首先是一个字符串
2.字符串中包含对应的类型
-局限性
1.typeof null ==》“object”
2.基于typeof无法细分出当前值是普通对象还是数组对象等,因为只要是对象书路类型,返回结果都是“object”,如下图
image.png
adj:
image.png
2.instanceof 用来检测当前实例是否率属于某个类
3.constructor 基于构建函数检测数据类型(也是基于类的方式
4.Object.prototype.toString.call() 检测数据类型的最好方法