Показать сообщение отдельно
  #2 (permalink)  
Старый 12.11.2010, 02:40
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от r1der
После того как создался массив/объект в функции и мы его вернули в глобальный контекст, t становится ссылкой на созданный объект, ссылка arr удаляется, но объект продолжает жить, верно?
локальная переменная arr существует только в момент выполнения ф-ции, и разумеется исчезает.
объект-массив, на который она ссылается, остается, так как на него продолжает ссылаться глобальная переменная t
Сообщение от r1der
теперь с каждым вызовом fn numberOfCalls будет выступать в роли статической переменной и увеличиваться при каждом вызове? Это связано с тем что createCounter создает лексическую область видимости, что-то вроде класса и сохраняется в fn?
это связано с тем, что createCounter находится в замыкании, и только с этим.
на сайте есть отличная статья про замыкания
Сообщение от r1der
Классы в JS создаются так:
нет.
в JS нету классов. совершенно нету
и они никак не создаются, соответственно
все попытки создания классов в JS - ложь и провокация
всего лишь попытка привнести в язык привычный по-другим языкам механизм.
но, он в этом языке совершенно ни к месту, и не нужен
Ответить с цитированием