Сообщение от javacrypt
|
Слышал, что работа с массивом быстрее чем с хеш-объектом. Как поступить?
|
Работа - быстрее. А по ключу - быстрее поиск. Причём пока быстрee даже Map/Set.has().
Вывод - для работы хранить массив, для быстрого доступа хэш-таблицу с уникальными id. Очевидно же.) Оверхед минимален.
...upd:
Смотрю вы так и делаете. Знач всё гуд.)
Единственное что так: goods[id++] и даже так: goods[String(id++)] - делать не стоит: если 0 <= id < 2^32 то он автоматически станет ключом массива(с соотв. изменением length). Чтоб он стал свойством объекта id должен быть больше 2^32\меньше 0, либо не преобразовываться в число.(ну либо использовать отдельный объект для этого дела
)
...upd2:
Таки дошло что похоже "так" вы не делаете, а просто привели пример
, подумал что добавление идёт ~так:
var goods = [], temp = new Product();
goods[temp.id] = temp; //добавление в объект
goods.push(temp); //добавление в массив
красивый и удобный вариант.)