2
所以我試圖建立一個數組通過兩個「for」循環,每個級別的多維數組。嵌套的Javascript循環產生奇怪的結果
變量:
var pos = new Array();
var scales = [
2, // Background
0.9, // Slide_1 (farthest back)
1, // Slide 2
1.15 // Slide 3
];
下面是代碼:
for(j = 0; j < 5; j++) {
var nextPosition = 0;
for(var i = 0; i < numZones; i++) {
alert(j + '' + i);
pos[j][i] = nextPosition;
nextPosition = (nextPosition + screenWidth + bufferSize)/scales[j];
}
}
它將通過第一層細迭代,但是當它翻轉到第二層,螢火蟲是扔一個模糊的錯誤在pos[j][i] = nextPosition
行。它聲稱
TypeError: can't convert undefined to object
不用說,我非常惱火和困惑。什麼是未定義的?我錯過了什麼?我在i
和j
的值爲alert()
,並且它們在i=0
和j=1
的情況下都沒問題,但是當它碰到上面提到的行時,就會報錯。
在此先感謝。
我永遠不會想到這一點。非常感謝你!我知道這只是一臺電腦,但我希望Javascript調試器能夠提供哪些部分是「未定義的」。 – 2013-03-10 07:06:52