| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Удаление объектов класса |
| Автор: Avtor 23.10.2007, 19:31 | ||
Подскажите как при каждом выборе не плодить объекты класса MyTreeClass (ведь они уничтожатся только при обновлении страницы)? |
| Автор: cruelangel 23.10.2007, 19:46 |
| Avtor, вынести создание объекта за пределы функции. |
| Автор: Avtor 23.10.2007, 20:16 |
| Меня интересует такой вопрос: в приведенном выше коде память, занимаемая объектом класса MyTreeClass будет расти каждый раз, когда мы меняем значение select'а или сборщик мусора будет удалять старые объекты класса MyTreeClass, оставляя лишь текущий tree? |
| Автор: ksnk 26.10.2007, 16:12 | ||
Можно завести в MyTreeClass какой-нибудьметод clear, чтобы почистить собственный мусор и писать как-нибудь так...
все равно это самое tree глобальное ... Есть еще метод delete. |
| Автор: Avtor 26.10.2007, 21:03 |
| Огромное спасибо за разъяснения по поводу сборщика мусора. А метод delete - стандартный? И как реализовать tree.clear, ведь насколько я знаю непосредственных способов освобождения памяти в JavaScript нет, здесь реализовано автоматическое освобождение. |
| Автор: vasac 27.10.2007, 10:44 |
| Avtor, delete удаляет свойства объектов, но не переменные. Впрочем, к вашему случаю он не относится. Что замена значения переменной, что delete сделают только одно — объект будет недоступен из js-сценария и с полным правом может быть удален из памяти. Когда же именно он будет удален, на это, имхо, напрямую из js повлиять нельзя. |
| Автор: Avtor 27.10.2007, 14:06 |
| Спасибо за помощь. |