作为我学习JavaScript的一部分,我尝试编写代码来展示我正在学习的概念;今天我正在学习升降变量。这是我写的代码:为什么我的JavaScript提升局部变量返回undefined,但悬挂的全局变量返回空白?
console.log("A: My name is " + name);
function happy() {
console.log ("1: I am " + feeling);
var feeling = "happy";
console.log ("2: I am " + feeling);
}
happy();
var name = "Jim";
console.log("B: My name is " + name);
我预期的结果如下:
A: My name is undefined
1: I am undefined
2: I am happy
B: My name is Jim
然而,在WriteCodeOnline.com而在另一个沙盒测试我的代码的时候,第一的console.log显示A: My name is
。我使用的是Chrome浏览器,如果这有所帮助。
所以,我的问题是,为什么当悬挂的全局变量返回一个空白时,函数内的悬挂局部变量返回undefined?
它似乎存在另一个问题回答我的问题。如果我知道我的问题的答案,我可能也会找到其他问题。如果这个问题关闭,我没有问题。 – JimLockwood