Заметил, что у меня очень долго выполняется очистка памяти от ненужных объектов.
Оказалось, что присваивание null, выполняя примерно ту же функцию очистки памяти что и delete, работает быстрее, в зависимости от браузера:
- IE6 — примерно в десять раз,
- IE8 — примерно в четыре раза,
- Firefox 3 — примерно вдвое,
- Opera — примерно на 10-20%.
Разница между delete и присваиванием null в том, что, во-первых, после delete значение становится undefined, во-вторых, удаляется не только значение, но и ключ, таким образом, исчезая из циклов вида for in, в отличие от присваивания null.
Если вышеперечисленное не играет роли, то можно смело пользоваться присваиванием null вместо delete.
