Closure 编译器不支持 ES6

ES6 not supported in Closure Compiler

我正在使用 Google Closure 编译器,但出现以下错误:

ES6_FEATURE: this language feature is only supported in es6 mode: computed property. Use --language_in=ECMASCRIPT6 or ECMASCRIPT6_STRICT to enable ES6 features.

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

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

基本上我传递的是我在同一行上创建的 object。我知道我可以简单地在 JavaScript 源 header 中添加对 ES6 的支持,但我想知道为什么会出现此错误以及如何解决它?

这是因为你在文字对象中使用了Computed Property Names

{ ['c']: C, ['r']: R }

兼容 es5 的替代品可能是:

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