Ну, это зависит.Если у вас есть функция, определенная или выраженная, например, под divWindow, это будет означать, что divWindow считается достижимым сборщиком мусора, по крайней мере, до тех пор, пока эта функция существует.В этом случае установка divWindow в null фактически приведет к тому, что GC очистит его в следующем цикле.Однако, если это не так, «обнуление» переменной не поможет ей больше, чем обычно.Если бы вы опубликовали весь код, я мог бы рассказать вам больше.
Нет явного способа освободить память в javascript.Лучшее, что вы можете сделать, - это знать обо всех ссылках на ваш объект, знать, насколько он достижим, и убедиться, что объект недоступен, когда он вам больше не нужен.После этого, в конечном счете, вы должны научиться доверять сборщику мусора, что не так просто, когда вы кодируете что-то, что вы хотите запустить в IE, например.
(пс:хочу исключить комментарий, сделанный выше. Оператор delete
предназначен для удаления свойств из объекта. Он не «удаляет» переменные и не освобождает память. На самом деле, если вы это сделаете, javascript выдает1006 * в строгом режиме.)