我正在做一个项目,而且我已经安装了Babel 6。
我想我可以用这样的生活块:
{
let test = 'this is a test';
}它将改为:
(function(
var test = 'this is a test';
))();但输出文件是:
{
var test = 'this is a test';
}我是不是漏掉了什么?
谢谢
发布于 2016-02-16 18:33:22
出于性能原因,babel不使用IEFEs来区分作用域。但是,块中的变量将与具有相同名称的块外部的变量不同,不过:
{
let test = 'this is a test';
}
console.log(test);编译成
{
var _test = 'this is a test';
}
console.log(test);这在函数或模块中没有任何区别,它只会导致全局脚本中可区分的行为。
https://stackoverflow.com/questions/35440261
复制相似问题