最佳答案
我偶然发现 JavaScript 的“提升”功能,但我不知道这段代码到底是如何工作的:
var a = 1;
function b() {
a = 10;
return;
function a() {}
}
b();
alert(a);
我知道像(function a() {}
)这样的函数声明将被悬挂到函数 b
作用域的顶部,但是它不应该覆盖 a
的值(因为函数声明覆盖了变量声明,但是没有覆盖变量初始化) ,所以我希望警报的值应该是10而不是1!