JS中复合数组associative array和对象是等同的,判断一个key是否存在于数组中(或对象是否包含某个属性),不能使用ary[key] == undefined,因为可能存在ary = {key:undefined};正确的方法应该为:
ary.hasOwnProperty(key); 或 obj.hasOwnProperty(key);
另外使用key-value pair对复合数组或对象进行loop的时候应该使用:
for(var key in ary) { document.write(key+" : "+ary[key]); }
时间: 2024-11-08 19:58:58