可能重复:
是否有重新声明javascript变量的优势?
为什么以下代码显示1而不是undefined:
a = 1;
var a;
alert(a);
Run Code Online (Sandbox Code Playgroud)
1)var不重新声明或删除变量
2)即使它确实如此,你的代码也会被重写*使用javascript提升规则(任何变量或函数声明被移动到最近的封闭函数的顶部),如下所示:
var a;
a = 1;
alert(a);
Run Code Online (Sandbox Code Playgroud)
(*有效地重写;请参阅RobG的评论和关于输入执行上下文的链接以进行澄清)
| 归档时间: |
|
| 查看次数: |
117 次 |
| 最近记录: |