我有以下對象:
var objectVar = {
4 : { "key" : "key-name4", "item4" : {} },
3 : { "key" : "key-name3", "item3" : {} }
}
然後我嘗試以下方法:
$(objectVar).each(function(index,record){
console.log(record); // Loops Only Once and Logs Full Object
});
誰能幫我爲什麼$。每();函數通過主對象內的子對象進行迭代?
任何幫助,將不勝感激!正確
$.each(objectVar, function(index, record) {
console.log(record);
});
謝謝你的好解釋!我知道它在OP的範圍之外,但是你知道是否有辦法讓每個()函數按照編號鍵的順序解析,而不是記錄出現在對象內部的順序嗎? – dSquared
@dSquared:不,實際上沒有辦法用對象來做到這一點。唯一的方法是定義一個描述所需順序的數組,然後迭代數組,並從對象中獲取相關項目。因此,如果你的對象有鍵'7,3,9,4',你可以創建一個數組'arr = [3,4,7,9]'來定義順序,然後迭代該數組,並執行'objectVar [arr [i]]。但是那會變得有點複雜。 – user113716
...爲了獲得數字鍵的順序排序,您應該首先使用數組。 – user113716