Я ищу простой и эффективный способ бизнес-объектов с голубями, которые позже будут называться идентификатором в каком-то словаре. У меня этот метод работает, но кажется, что это может быть ненужным использование большого количества памяти.Использование памяти в словаре объектов в javascript
var objects = [{ ID: 20, Description: 'Item 1'},
{ ID: 40, Description: 'Item 2'},
{ ID: 60, Description: 'Item 3'}];
var objectsByID = [];
$.each(objects, function (index, o) {
objectsByID[o.ID] = o;
});
var itemID40 = objectsByID[40];
Firebug рассказывает мне, что objectsByID
имеет неопределенные элементы массива в-между идентификационными номерами, которые были добавлены, как так:
[undefined, ... ,
Object { ID=20, Description="Item 1"}, ... ,
Object { ID=40, Description="Item 2"}, ... ,
Object { ID=60, Description="Item 3"}]
ли эти индексы массива фактически назначены и использование памяти, или это концептуальный взгляд?
Кроме того, должен ли я это делать?
$ .each is jQuery? –
Да, используется здесь, чтобы упростить пример кода. Этот вопрос не относится конкретно к jQuery, я приму ответ, который тоже не использует его. – Codesleuth