此刻我正在使用對象來模擬關聯數組。 對象就像一個一對多的關係表從MySQL 例如:JavaScript「關聯」對象與陣列
var obj = {
105: [],
200: []
//...
}
我的屬性名稱是唯一的數字,所以我發現我可以用一個數組,太。 但是,索引之間的空條目填充undefined
。
var arr = [];
arr[10] = "Value";
arr[15] = "Value 2";
//arr => [undefined*10, "Value", undefined*4, "Value 2"]
因此,當我要迭代該數組時,我必須檢查當前索引值是否已設置。
所以問題是,哪個解決方案更快或更好。 使用一個對象或數組,其中 指針之間的空白區域填充了undefined
值。
http://stackoverflow.com/a/8067678/3166303 – leeor
在你的案例對象應該使用更少的內存。迭代兩個結構大部分是相同的,但是您必須記住,JavaScript中的對象屬性沒有順序。 – VisioN
[查看此鏈接的問題](http://stackoverflow.com/questions/17295056/array-vs-object-efficiency-in-javascript) –