Почему объекты Javascript не выходят за рамки?Javascript

Форум по Javascript
Ответить
Anonymous
 Почему объекты Javascript не выходят за рамки?

Сообщение Anonymous »

В Javascript, когда вы делаете что-то вроде этого:

Код: Выделить всё

function connect() {

var ws = new WebSocket(url);

ws.onmessage = function(e) {
window.alert(e.data);
};

}
это сработает. Но почему?
Можно было ожидать, что после выхода из функции Connect() этот локальный объект ws выйдет за пределы области видимости и будет подвергнут сборке мусора. Но в Javascript этого не происходит.
Значит, это как-то связано с объектом ws, к которому прикреплены прослушиватели событий? Или по какой причине объект продолжает оставаться в памяти?

Подробнее здесь: https://stackoverflow.com/questions/797 ... t-of-scope
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»