<分区>
为什么下面的JS代码打印'undefined'?有人可以解释一下 JS 的真正工作原理吗?
var regular = 'regular is assigned';
function prison() {
console.log(regular);
var regular;
}
prison();
谢谢!
<分区>
为什么下面的JS代码打印'undefined'?有人可以解释一下 JS 的真正工作原理吗?
var regular = 'regular is assigned';
function prison() {
console.log(regular);
var regular;
}
prison();
谢谢!
最佳答案
这是一个范围问题。
在您的函数中,您声明了一个新的作用域。
Javascript 将变量 decleration 提升到 top 函数。由于该变量没有值,因此它是 undefined
。
在窗口中创建的 regular
变量在函数范围内不存在。
关于javascript - 为什么即使变量声明为全局,Javascript 代码也会打印 'undefined'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36178348/