Я работаю над страницей, которая, в конечном итоге, может иметь более 100 массивов, только некоторые из которых будут использоваться в любой момент времени.Должен ли я очищать неиспользуемые массивы javascript?
В настоящее время я заполняю все массивы как глобальные переменные, но я подозреваю, что это неэффективно с точки зрения использования памяти.
Должен ли я изменить свой код, чтобы очистить массивы, когда они не используются? Если да, то каков наилучший способ сделать это? Я думаю, var myArray = new array()
, но, возможно, есть лучший вариант.
Если вы хотите «освободить» значение для сбора мусора, убедитесь, что никакие переменные или свойство не ссылаются на него. Вы можете достичь этого, назначив любое другое значение переменной, например. 'Null'. –
Уверен, что у вас НЕ должно быть 100 глобальных массивов, если вы используете только некоторые из них в любой момент времени. В правильном дизайне не было бы много использованных глобальных данных. Скорее, эти данные должны быть либо локальными по объему, и использоваться только определенной функцией или должны быть привязаны к объекту, который поддерживается только во время его использования. Настоящий ответ здесь заключается в том, что вам нужно исправить свой дизайн, чтобы состояние сохранялось в объектах, которые существуют только при их использовании. – jfriend00
@ jfriend00 Спасибо за это. Я пришел к одному и тому же выводу за одну ночь и изменил свою структуру, так что только несколько массивов повторно заполняются новыми данными по мере необходимости. – Thailandian