var list = W.$.dialog.list;
for (var i in list) {
alert(list[i].id);
}上面这些都没有问题,能够输出信息,但下面这句有问题
alert(list.length); list数组里明明都有对象存在,要不然上面那段代码也输出不了值来,但 list.length 输出的值怎么会是 undefined
for (var i in list) {
alert(list[i].id);
}上面这些都没有问题,能够输出信息,但下面这句有问题
alert(list.length); list数组里明明都有对象存在,要不然上面那段代码也输出不了值来,但 list.length 输出的值怎么会是 undefined
也可能是个对象,这个对象没有length属性
testobj[2]=123;
testobj.a="a";
alert(testobj[2]);//弹出123,这个测试可以回答你的疑问
alert(testobj["a"]);//弹出a所以可以用下标访问不见得是数组
但json对象 没有 length 属性的
在js中,对象调用属性,即可以使用“.”也可以使用“[]”,它们之间有一点区别的
要想判断一个对象是否为数组可用下面函数:
function isArray(arr){
if(!arr) return false;
return Object.prototype.toString.call(arr) === '[object Array]';
}