1. instance of 2、constructor 3、 isArray
1、var a=new Array(); a instanceof Array; //true 2、var a=new Array(); a.constructor==Array; //true 3、对支持isArray的浏览器 var a=new Array(); Array.isArray(a); //true
3、如果浏览器支持Array.isArray()可以直接判断否则需进行必要判断
/** * 判断一个对象是否是数组,参数不是对象或者不是数组,返回false * * @param {Object} arg 需要测试是否为数组的对象 * @return {Boolean} 传入参数是数组返回true,否则返回false */ function isArray(arg) { if (typeof arg === 'object') { return Object.prototype.toString.call(arg) === '[object Array]'; } return false; }