[1,2] instanceof Array //true
Array.isArray([1,2]) //true
Object.prototype.toString.apply([]); === “[object Array]”; Object.prototype.toString.apply(function(){}); === “[object Function]”; Object.prototype.toString.apply(null); === “[object Null]” Object.prototype.toString.apply(undefined); === “[object Undefined]” IE6/7/8 Object.prototype.toString.apply(null) 返回”[object Object]”
数据检测小结:javascript
typeofjava
适合基本类型及function检测,遇到null失效。app
[[Class]]prototype
经过{}.toString拿到,适合内置对象和基元类型,遇到null和undefined失效(IE678等返回[object Object])。对象
instanceofblog
适合自定义对象,也能够用来检测原生对象,在不一样iframe和window间检测时失效。ip