数组对象其实是一个特殊对象,他拥有普通对象的全部特性,所以不止负索引,小数索引,连字符串索引都是可以的,只是用这些索引向数组添加属性时,数组的length不会增加罢了,而只有当索引是正整数或其对应数字串时,length才会增加,仅此而已。
var arr = [];
arr[0] = 0;
arr[1] = 1;
arr[-1] = -1;
arr[1.1] = 1.1;
arr['a'] = 'a';
alert("length: " + arr.length);
for(var i in arr){
alert(i + " :" + arr[i]);
}