謝謝你乍得的解決方案,但它現在似乎清除數組中的值,這裏是一個foreach
在控制檯日誌,它顯示你我的情況(後面對於更新功能更新後的代碼):jQuery多維數組(動態鍵) - 無法設置屬性未定義
timer.html:60 ------------------------------------
timer.html:57 0
timer.html:58 undefined
timer.html:57 1
timer.html:58 1.910
2timer.html:60 ------------------------------------
timer.html:57 0
timer.html:58 undefined
timer.html:57 1
timer.html:58 undefined
timer.html:57 2
timer.html:58 1.727
2timer.html:60 ------------------------------------
timer.html:57 0
timer.html:58 undefined
timer.html:57 1
timer.html:58 undefined
timer.html:57 2
timer.html:58 undefined
timer.html:57 3
timer.html:58 0.690
timer.html:60 ------------------------------------
================================== ===========
function updateLap(kartId){
if (isNaN(driverLapNumber[kartId])) {
//IF LAP NOT SET THEN THE KART ID NEEDS TO BE SET AS 0 AS IT IS THE START OF THE RACE
window.driverLapNumber[kartId] = 0;
}
//ADD ONE LAP TO THE KART ID
driverLapNumber[kartId]++;
//ADD LAP TIME FOR CURRENT LAP NUMBER
driverLapTimes[kartId] = [];
driverLapTimes[kartId][driverLapNumber[kartId]] = window.lapTime;
$.each(driverLapTimes , function(index, obj) {
$.each(obj, function(key, value) {
console.log(key);
console.log(value);
});
console.log("------------------------------------");
});
$(".lapTimes").prepend("kartId: "+kartId+" - "+window.lapTime+"<br>");
}
我想我可以責怪PHP˚F或者這樣做,因爲它可能與我目前正在寫的方式,我需要援助在糾正這個請。
一切除了driverLapTimes
陣列上的第二個關鍵細,我希望它的輸出是這樣的:
driverLapNumber[999][1] = 6.666;
driverLapNumber[999][2] = 6.666;
driverLapNumber[999][3] = 6.666;
driverLapNumber[999][4] = 6.666;
但1,2,3,4鍵想出以下控制檯錯誤:
Uncaught TypeError: Cannot set property '1' of undefined
的功能代碼:
function updateLap(kartId){
if (isNaN(driverLapNumber[kartId])) {
window.driverLapNumber[kartId] = 0;
}
//ADD ONE LAP TO THE KART ID
driverLapNumber[kartId]++;
//ADD LAP TIME FOR CURRENT LAP NUMBER
driverLapTimes[kartId][driverLapNumber[kartId]] = window.lapTime;
}
你可以發佈你的一些數據/數據結構的driverLapNumber陣列和driverLapTimes? – mhodges
你是否將driverLapNumber [999]初始化爲數組? driverLapNumber [999] =新陣列() –