「[JavaScript函數]在內部存儲它們可能引用的變量,這些變量在其封閉範圍中定義。」確定JavaScript關閉中可訪問的變量集
我怎樣才能確定這組變量是什麼?
例如,大衛·赫爾曼在有效的JavaScript給出了這樣的功能(和關閉):
function sandwichMaker() {
var magicIngredient = "peanut butter";
function make(filling) {
return magicIngredient + " and " + filling;
}
return make;
}
var f = sandwichMaker();
document.writeln("<p>" + f("jelly") + "</p>");
document.writeln("<p>" + f("bananas") + "</p>");
document.writeln("<p>" + f("marshmallows") + "</p>");
當然,magicIngredient是可變的訪問,使(),但還有什麼?如果sandwichMaker本身就是一個功能呢?然後是全局變量。當它在當前範圍內查找相關值時,它的功能是什麼?
我得說,這是混淆了填充VAR如何被設置爲果凍因爲香蕉和棉花糖看起來並不像sandwichMaker()需要參數 –
@nathanhayfield:但'make'確實 – Bergi