[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