Показать сообщение отдельно
  #7 (permalink)  
Старый 21.09.2009, 12:45
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от Gvozd
если ты будешь внутри объявлять переменные или функции без var, то все равно засрешь
Естессно, я это понимаю...

У меня вот ещё какой вопрос:
Например, есть такой код:

function addClick(){
  var i='New var';
  ele.onclick=function(){
    alert(i);
  }
}


Тут обычное замыкание и при каждом вызове addClick будет создаваться функция-обработчик. Так?! А что изменит такой код:

function addClick(){
  var i='New var';
  ele.onclick=(function(){
    return function(){alert(i)}
  })();
}


Т.е. тут тоже замыкание, но я так понимаю, анонимная функция не будет клонировацо, т.к. отчищается после вызова...
Мне самое главное понять, что остаёться в памяти...

И ещё... В чём отличия записей:
var f=function(){}

и
var f=(function(){});


Сори, если пишу глупости
Ответить с цитированием