Цитата:
function change() {
x=11;
}
var x=10;
change();
alert(x);
Так лучше ) |
Цитата:
|
Угу, тут есть функция которая видит весь контекст.. почему бы не назвать её замыканием?
var closure = function(){
change();
}
function change(){
x = 11;
}
var x = 10;
Вот так вот уже и замыкание.. |
Цитата:
|
Имеется введу замыкание не из-за глобальных переменных, а из-за специфики такой (function label) записи функци.. если функция будет анонимная, то она не увидит переменную "ниже" себя в коде.
Чем это не замыкание, использовать именованную функцию для работы со всем контекстом?.. давайте рассмотрим пример..
(function(){
//...
function named(){
return x;
}
var anonimus = function(){
alert(named());
}
var x = 'чё то там';
//...
anonimus();
}());
Это конечно извращение, реальную задачу сейчас трудно придумать, да может оно и не нужно вообще, но имхо, это замыкание. |
Цитата:
Ну и заодно http://dmitrysoshnikov.com/ecmascrip...er-6-closures/ |
Читал я это.
|
Тогда вы должны понимать бредовость процитированной мной фразы.
|
эээ.. ну был не прав, почему то думал, что scope контекста запоминается такой, какой был в момент объявления..
|
С замыканиями нужно связываться очень аккуратно и с солидной js подготовкой, а то можно получить Замыкание головного мозга :) .
|
| Часовой пояс GMT +3, время: 22:05. |