gpt4 book ai didi

javascript - 是否可以调用闭包内定义的函数?

转载 作者:行者123 更新时间:2023-11-30 10:55:56 26 4
gpt4 key购买 nike

在下面的代码中,我可以调用 baz.我还在其他地方读到“JavaScript 具有函数级作用域”。我知道,我在某个地方混淆了自己。有人能让我明白吗?

/* An anonymous function used as a closure. */
var baz;
(function() {
var foo = 10;
var bar = 2;
baz = function() {
return foo * bar;
};
})();

baz(); // baz can access foo and bar, even though it is executed outside of the
// anonymous function

.

最佳答案

变量 baz 在匿名函数外部声明(即使在您使用函数表达式为其赋值之前它实际上并未定义)。这将其范围置于所述功能之外。

foobar 在匿名函数内声明,这将它们的范围限制在该函数内。分配给 baz 的函数可以访问它们,因为它们在创建时就在范围内。

关于javascript - 是否可以调用闭包内定义的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1656648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com