gpt4 book ai didi

javascript - 涉及IIFE的吊装顺序,具体示例

转载 作者:行者123 更新时间:2023-11-28 17:16:14 25 4
gpt4 key购买 nike

我遇到了这段代码:

var myVar = 'foo';

(function() {
console.log('Original value was: ' + myVar);
var myVar = 'bar';
console.log('New value is: ' + myVar);
})();

问题:

  1. IIFE 是否在全局 myVar 之前被提升到顶部?1a.如果是,它是否在声明全局 myVar 之前执行?
  2. 在 IIFE 中,我首先得到 undefined,然后得到 bar。 IIFE 的幕后执行顺序是什么?

最佳答案

  1. IIFE 是一个表达式,而不是一个语句,所以它不会被提升。
  2. IIFE 内的
  3. var myVar 被提升到函数作用域的顶部,但赋值却没有。以下是等效的:

(function(){
var myVar;
console.log('Original value was: '+ myVar);
myVar = 'bar';
console.log('New value is: ' + myVar);
})();

关于javascript - 涉及IIFE的吊装顺序,具体示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53417054/

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