gpt4 book ai didi

javascript - 自调用函数是如何提升的?

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

请看这段代码示例:

var myFunc = function () {
alert("hello world");
})();

这是一个函数表达式,没有提升。所以我在这里的假设是它仅在代码到达其在代码中的实际位置时运行。这是真的吗?

最佳答案

This is a function expression, which is not hoisted.

是的。函数表达式不会提升(自调用或其他方式)。

此外,没有对存储在任何地方的函数的引用,因此首先没有任何东西可以提升。


So my presumption here is that it runs only…

函数声明被提升,但这与它们何时运行无关。就在与函数名匹配的变量名获取它的值时(因此它可以用来调用函数)。

函数只有在被调用时才会运行。

在您的代码中,then 是处理函数体之后的() 时。


与所有 var 声明一样,myFuncvar 声明将被托管。它将获得 undefined 的初始值,然后,当函数运行时,它将获得该函数的返回值(也是 undefined)。

关于javascript - 自调用函数是如何提升的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48266163/

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