在ECMAScript 6之前,Javascript是没有block statement scope的.....
这就导致了诡异的现象,比如下面的代码
var x = 1; { var y = 2; } console.log(y); // outputs 2
简直神奇.....
现在有了ECMAScript 6,代码就可以这样写
var x = 1; { let y = 2; } console.log(y); // ReferenceError: y is not defined
嗯,这样就可以愉快地玩耍了....
时间: 2024-08-06 07:58:56