javascript 可变范围相关吊装
javascript variable scope related hoistring
这是我的问题。
<html>
<head>
</head>
<body>
<script>
var name;
console.log(name);
name = "abcdefg";
console.log(name);
</script>
</body>
</html>
这段代码的输出是
我知道第一个日志必须说未定义,因为提升。
我已经尝试过刷新和删除缓存,但不明白为什么。请帮助我。
name
是window
的保留变量名。因此,当您第一次访问 name
而不覆盖它时(var name
不覆盖),您将获得全局 属性 window.name
。
在你的情况下,第一个 console.log
你可能会得到一些不同的东西 undefined
,但不等于 abcdefg
<html>
<head>
</head>
<body>
<script>
var name;
console.log(name);
name = "abcdefg";
console.log(name);
console.log(window.name);
</script>
</body>
</html>
这是我的问题。
<html>
<head>
</head>
<body>
<script>
var name;
console.log(name);
name = "abcdefg";
console.log(name);
</script>
</body>
</html>
这段代码的输出是
我知道第一个日志必须说未定义,因为提升。
我已经尝试过刷新和删除缓存,但不明白为什么。请帮助我。
name
是window
的保留变量名。因此,当您第一次访问 name
而不覆盖它时(var name
不覆盖),您将获得全局 属性 window.name
。
在你的情况下,第一个 console.log
你可能会得到一些不同的东西 undefined
,但不等于 abcdefg
<html>
<head>
</head>
<body>
<script>
var name;
console.log(name);
name = "abcdefg";
console.log(name);
console.log(window.name);
</script>
</body>
</html>