Krz*_*nek 5 javascript firefox ecmascript-6
以下代码在 Firefox 52 Scratchpad 中运行时产生错误:
function scope() {
let x = 1;
}
let x = 2;
/*
Exception: SyntaxError: redeclaration of let x
@Scratchpad/8:1:1
*/
Run Code Online (Sandbox Code Playgroud)
怎么解释?第一个x应该封装在函数中,不要干扰第二个声明。
在 Chrome 中将此代码作为片段运行,或<script>在 Firefox 中带有标记的 HTML 页面内运行不会触发异常。将它包装在一个函数中,甚至是一对{}括号中都可以解决这个问题。
可能是 Scratchpad 中的错误吗?
小智 3
只要运行一次就可以了。当你第二次尝试相同的代码时,原来的代码let x = 2;仍然存在。
| 归档时间: |
|
| 查看次数: |
728 次 |
| 最近记录: |