Сколько вложенных объектов или массивов возможно в Javascript? - PullRequest
0 голосов
/ 25 апреля 2020

Этот вопрос возникает из любопытства, но есть ли предел тому, сколько вложенных объектов может иметь данный объект (или аналогично, начиная с typeof [] === "object", сколько массивов может быть вложено в массив) в JS?

Я думал о создании массива, который мог бы иметь тысячи вложенных массивов с тысячами чисел внутри них. Отбирая возможные рекомендации вопросов, мне было интересно, смогу ли я столкнуться с ограничением в какой-то момент (то есть предположить, что это не просто проблема, например, слишком большая рекурсия или вложенные циклы for, или аппаратные ограничения).

Связано: сколько вложенных объектов я должен определить в javascript?

1 Ответ

2 голосов
/ 25 апреля 2020

Когда вы создаете объект или массив в Javascript, он выделяет небольшой блок памяти для хранения значения. Все значения в объекте или массиве, включая другие объекты или массивы, выделяются в отдельный блок памяти со ссылкой на адрес в родительском объекте или массиве.

Следовательно, сколько вложенных объектов или массивов (или сколько объектов или массивов, период), которые вы можете инициализировать в сценарии за один раз, полностью зависит от того, сколько оперативной памяти имеет ваш компьютер. Как только вы начинаете достигать пределов объема вашей оперативной памяти, скорость процессора вступает в игру, поскольку чем быстрее ваш компьютер может находить, создавать и перераспределять адресное пространство, тем дольше система может работать до ее сбоя.

...