我有部分數據用分佈在不同集合中的ID標記。我可以在JavaScript中獲得對象和數組的好處嗎?
我需要直接使用ID訪問這些數據,但我也需要循環快速的數據。
var listOfPartA = {
34523: { foo: 7, bar: 123},
6435: { foo: 2, bar: 163},
3123: { foo: 3, bar: 223},
...
};
var listOfPartB = {
34523: { baz: 1},
6435: { baz: 4},
3123: { baz: 6},
...
};
如果我需要獲得特定dataparts一個標識它的速度快,但如果我嘗試循環中的所有dataparts它的速度慢。
var listOfPartA = [
{ id: 34523, foo: 7, bar: 123},
{ id: 6435, foo: 2, bar: 163},
{ id: 3123, foo: 3, bar: 223},
...
];
var listOfPartB = [
{ id: 34523, baz: 1},
{ id: 6435, baz: 4},
{ id: 3123, baz: 6},
...
];
如果我要得到具體dataparts這些對象是緩慢的,因爲我必須手動搜索它們的ID,但如果我遍歷它的快速所有dataparts。
我不能有快速直接訪問和快速迭代嗎?
你總是可以使用兩者。數組通過引用進行分配,因此在內存方面的開銷很小。 – meagar
同時使用兩個數據。關鍵字:索引結構;) – Coxer
如果我想將數據刪除到所有ID,該怎麼辦?我可以在對象中快速執行它,但不會導致數組最終導致死亡引用? –