Показать сообщение отдельно
  #15 (permalink)  
Старый 22.04.2010, 12:21
Аватар для Nekromancer
Профессор
Отправить личное сообщение для Nekromancer Посмотреть профиль Найти все сообщения от Nekromancer
 
Регистрация: 06.05.2009
Сообщений: 1,163

Имеется введу замыкание не из-за глобальных переменных, а из-за специфики такой (function label) записи функци.. если функция будет анонимная, то она не увидит переменную "ниже" себя в коде.
Чем это не замыкание, использовать именованную функцию для работы со всем контекстом?..
давайте рассмотрим пример..
(function(){
//...
function named(){
 return x;
}
var anonimus = function(){
 alert(named());
}
var x = 'чё то там';
//...
anonimus();
}());


Это конечно извращение, реальную задачу сейчас трудно придумать, да может оно и не нужно вообще, но имхо, это замыкание.
__________________
Нужно равняться на лучших, а не оправдываться за счёт худших.
Ответить с цитированием