如何判断一个js对象是不是Array

时间:2023-12-31 10:35:56

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;
}