Closure Compiler不支持ES6

fre*_*hie 3 javascript google-closure-compiler ecmascript-6

我正在使用Google Closure Compiler,我收到以下错误:

ES6_FEATURE:此语言功能仅在es6模式下受支持:computed属性.使用--language_in = ECMASCRIPT6或ECMASCRIPT6_STRICT启用ES6功能.

触发此错误的行是这样的:

var TheCellRef = LeadImport2ExcelLibrary['utils']['encode_cell']({ ['c']: C, ['r']: R });
Run Code Online (Sandbox Code Playgroud)

基本上我传递的是我在同一条线上创建的对象.我知道我可以简单地在JavaScript源代码头中添加对ES6的支持,但我想知道为什么会出现这个错误以及如何修复它?

Mat*_*ias 5

这是因为您在文字对象中使用计算属性名称:

{ ['c']: C, ['r']: R }
Run Code Online (Sandbox Code Playgroud)

es5兼容的替代品可能是:

var TheCellRef = LeadImport2ExcelLibrary['utils']['encode_cell']({ "c": C, "r": R });
Run Code Online (Sandbox Code Playgroud)

  • 或者只是`{c:C,r:R}`. (3认同)