有人可以解释为什么undefined被打印到控制台而不是4?
var a = 4;
function test() {
if (!a) {
a = 3;
}
console.log(a)
}
undefined
答案 0 :(得分:1)
这与variable hoisting
无关。
因为你没有return
任何东西。因此,当您在浏览器控制台中执行此代码时,它会显示undefined
。
要获得4
,您需要从该功能调用test
函数和return a
。
代码:
var a = 4;
function test() {
if (!a) {
a = 3;
}
console.log(a);
// Return a from the function, if needed
return a;
}
// Call function here
test();