本文简述下判断js数据类型的四种方式
typeof
typeof 返回一个值的类型,对于基本数据类型,除了null都会返回正确的结果(null返回Object)
当用typeof判断引用数据类型时,对于函数会返回Function,其余的会返回Object
instanceof
instanceof 只能用来判断对象,它判断某一个对象是否是某个构造函数的实例
例如:
1 | const obj={}; |
Object.prototype.toString
toString()是Object的原型方法,调用该方法,默认返回当前对象的 [[Class]]。这是一个内部属性,其格式为[object xxx],其中xxx就是对象的类型
该方法既可以判断简单数据类型,也可判断引用数据类型
1 | console.log(Object.prototype.toString.call('hello world'));//[object String] |
使用constructor来判断数据类型
简单数据类型和引用数据类型都可以使用该方法判断
1 | let num = 2; |