var a;
console.log(a);
+function() {
alert("Hello from IIFE!");
}();
console.log(a);
a = 'Hi';
控制台中的答案: 未定义 警报弹出 嗨
问题:要么a应该都未定义,要么都应该显示Hi
JavaScript如何工作?
以不同的方式执行
答案 0 :(得分:0)
a
设置为undefined
。undefined
已记录。"Hello from IIFE!"
undefined
已记录。a
设置为'Hi'
如果您将自己的文本复制粘贴到开发工具中,您会看到这种模式的差异很小。在新的控制台会话中,您将获得:
最后一个嗨,我想你是从混乱中解脱了,它是将值分配给变量的返回值。