数组类型检测
- instanceof
var arr = new Array();
if(arr instanceof Array){
console.log(true)
}
instanceof 的问题在于,如果网页脚本包含多个框架,有多个版本的数组构造函数,如果从一个框架箱另一个框架传递数组,这时候instanceof检测数组会有问题
- Array.isArray
这个方法是EMAC5添加的方法,支持的浏览器版本:IE9+,firefox4+, safari5+,opera10.5+, chrome
- Object.prototype.toString.call()
这个方法存在的问题是:Object.prototype.toString函数是可以被改变的,如果是原生的js对象且没有被改变是可以的