js怎么判断一个对象是不是类数组对象

2024-11-16 12:55:50
推荐回答(2个)
回答1:

本来判断一个对象类型用typeof是最好的,不过对于Array类型是不适用的
可以使用 instanceof操作符
var arrayStr=new Array("1","2","3","4","5");
alert(arrayStr instanceof Array);
当然以上在一个简单的页面布局里面是没有问题的,如果是复杂页面情况,入获取的是frame内部的Array对象,可以用这个函数判断:
function isArray(obj) {
return Object.prototype.toString.call(obj) === '[object Array]';
}

回答2:

说白了,就是先判断是否是个数组,在判断元素是否为对象
例:var such=[obj,obj,obj]; //假设obj是对象类型
if(such.length) //判断such是否有length属性,有则是数组,没有则不是
{
if(typeof(such[0])=="object")

{
alert("是");

}

}