Эффективнее ли хранить данные в массивах или объектах? - PullRequest
0 голосов
/ 20 января 2012

Я пишу программу, которая по сути хранит серию сценариев.Эти сценарии необходимо выполнять по одному и только один раз в случайном порядке.Я использую тасование Фишера-Йейтса для перемешивания массива, но мне любопытно, какой метод лучше всего использовать для хранения отдельных аспектов каждого сценария.В настоящее время я использую цифры и просто рассчитываю, какой сценарий соответствует каждому числу.(Например, если бы это были карты, каждой масти был бы присвоен номер от 0 до 3, а номером карты в массиве был бы номер ее карты (1-13) + (13 * масть)).* Я не думаю, что это очень хороший выбор, и я хочу обменяться им, используя либо многомерный массив для хранения данных, либо массив объектов.Что будет лучше / эффективнее?

1 Ответ

2 голосов
/ 20 января 2012

JavaScript-массивы на самом деле не являются массивами в классическом смысле непрерывного блока памяти, который вы индексируете, используя числовой индекс, который умножается на размер записи; это просто объекты с небольшим особым поведением в отношении класса имен свойств (все они являются цифрами & mdash; например, «indexes») и свойством length (плюс они имеют Array.prototype их поддержку, экземпляры массива имеют такие вещи, как slice и тому подобное). (Подробнее см. Статью, приведенную выше, или Раздел 15.4 спецификации.)

Так что, если вам не нужна специальная обработка «индексов» массива, просто используйте объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...