JavaScript中复合数组associative array和对象是等同的,判断一个key是否存在于数组中(或对象是否包含某个属性),不能使用ary[key] == undefined,因为可能存在ary = {key:undefined};
JavaScript中判断数组是否有key的方法:ary.hasOwnProperty(key);
或obj.hasOwnProperty(key);
另外使用key-value pair对复合数组或对象进行loop的时候应该使用:for(var key in ary) { document.write(key+" : "+ary[key]); }
示例:var aaa = {
"0":"a",
"1":"b",
"2":"c",
"aa":"d",
"4":"e"
};
alert(aaa .hasOwnProperty(4));
运行结果:
数组:
数组就是一组数据的集合,其表现形式就是内存中的一段连续的内存地址,数组名称其实就是连续内存地址的首地址。
数组的特点:
数组定义时无需指定数据类型
数组定义时可以无需指定数组长度
数组可以存储任何数据类型的数据(比如说一个元素保存整型,一个元素保存字符串型,这个在JS中是可以的)