javascript數組的一些奇葩

//alert("test");
//javascript 中數組不一樣的用法

var a=[];
a[-1]=1;

console.info(a.length);  //0
console.info(a[-1]);     //1
console.info(a["-1"]);   //1 說明這個值以對象屬性的形式被存儲

a[true]=2;
console.info(a[true]);   //值爲1
console.info(a[1]);      //這個地方true  不能再轉換爲1

//再做一個另類的測試
var a1=[];
a1[0,0]=1;
a1[0,1]=2;
console.info(a1.length);  //2
console.info(a1[0]);  //1
console.info(a1[1]);   //2
//說明[0,0],[0,1]做得是逗號運算

//再變變
a1[1,0]=3;
a1[2,1]=4;
console.info(a1.length);   //2
console.info(a1[0]);   //3
console.info(a1[1]);   //4
//又進一步的證明做的是逗號運算,還將前面的值覆蓋了

//再做進一步的測試
var a3=[];
var i=1;
while(i<10){
	a3[i*=2,i]=i;
}
console.info(a3.length);  //17
console.info(a3);         // [2: 2, 4: 4, 8: 8, 16: 16]

for (i=1;i<a3.length;i++){
	console.info("i: "+ a3[i]);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章