Сообщение от Dmitry A. Soshnikov
|
Да, сохраняется
|
Уточню - а сохраняется ли [[Scope]] (d), если функция d и все вложенные в нее функции не содержит переменных из [[Scope]](d) и не содержат операции eval , в этом случае вроде как бы оно и не нужно тратить память ?
И еще аналогичный вопрос :
А сохраняется ли Scope Chain контекста в котором мы сделали замыкание? Тоже, вроде как, ни к чему .
Т.е.
var a = 10;
function b() {
var c = 20;
function d() {
var e = 30; alert( e);
}
d();
var savB=d; // Scope Chain (b) === [[Scope]](d) Здесь сохранится ?
return d;
}
var sav=b();