javascript中的类型判断
一. 数据类型
javascript中数据类型分为五种基本数据类型外加一种对象数据类型,结构图如下:
二. 类型检测
1.typeof
typeof常用于检测基本数据类型以及函数对象,但它不适用于检测null
2.instanceof
常用于判断对象类型,基于原型链。期望左操作数为对象,期望右操作数为函数对象,判断左边的原型链上是否有右边的构造函数的prototype属性。
适合判断自定义对象,以及检测原生对象。
注意:不同window,iframe之间对象类型检测不能用instanceof。
3.Object.prototype.toString.apply()
适合内置对象和基元对象的判断。
注意:IE 6,7,8 Object.prototype.toString.apply(null) 与 Object.prototype.toString.apply(undefined) 返回 [object Object]。