Функция Javascript продолжает вызываться, хотя ее класс равен нулю - PullRequest
3 голосов
/ 04 февраля 2010

Я был бы рад, если бы вы объяснили мне, почему вызывается shout (), хотя якобы он «пропал».http://mootools.net/shell/jhCBz/

По сути, я понял: функция получает собственную регистрацию и теперь не зависит от объекта, который ее вызвал.Но я был бы рад получить настоящее объяснение.
Спасибо.

Ответы [ 2 ]

6 голосов
/ 04 февраля 2010

Функции всегда независимы. Пока есть ссылка на функцию, она продолжает существовать. И в этом случае, как и ваш объект, поскольку вы передали ссылку на него (через this) в функцию periodical(), которая удерживает его для контекста.

1 голос
/ 04 февраля 2010

x содержит ссылку на myclass. myclass выполняет shout. Когда вы устанавливаете для x значение null, вы просто избавляетесь от ссылки на myclass, а не от самого объекта myclass.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...