...


  Уничтожение объектов и сборка мусора
    Объекты и другие переменные используют память, ресурсы которой у компьютера ограничены. Из-за потенциального дефицита памяти, некоторые языки программирования вынуждают программистов организовывать процесс использования памяти их программами. К счастью, JavaScript таким языком не является - проблемы управления памятью здесь скрыты от программиста. При создании объектов в JavaScript, интерпретатор незаметно и без вашего участия выделяет память для использования ими. Он также выполнит за вас и необходимую "уборку". Эта функция языка называется сборкой мусора.
    Языки, подобно JavaScript обеспечивающие сборку мусора, внимательно следят за данными. Когда какой-либо фрагмент данных становится недоступным программе, занятое этими данными пространство утилизируется интерпретатором и возвращается в пул доступной памяти. Так, в следующем программном коде, объект String, ссылающийся на информацию о Моне, будет возвращен в пул свободной памяти, потому что объект становится недоступным (ссылка на него заменяется ссылкой на объект, содержащий информацию о Дали):

var myString - new String("Моне был французским импрессионистом"); // другие строки программного кода
myString = new String("Дали был испанским сюрреалистом");

    Подробности сборки мусора интерпретатором для нас не важны. Однако, если в программном коде используется большое число данных, то подсказка интерпретатору о том, что вы закончили работу с конкретными переменными, может оказаться полезной для ограничения следа памяти вашего сценария. Проще всего сделать это, заменив ненужные данные значениями nul 1, указывающими на то, что теперь переменная пуста. Предположим, имеется объект Book:

var myBook = new Book();
// Переменной myBook присваивается текст книги "Война и мир"
// Осуществляются какие-то операции с данными
// По окончании выполняется чистка путем установки значения
null myBook o null;

Последний из указанных здесь операторов недвусмысленно указывает на то, что вы закончили работу с данными, на которые ссылается myBook, и память, занимаемая этими данными, теперь может использоваться снова.



( )


10

?

:










@ 2008-2011 Amber

.