javascript包,是一个保留关键字

iwa*_*wan 11 javascript package google-closure-compiler

我正在尝试使用Google Closure Compiler缩小第三方JavaScript库,但它在下面的行中出错:

inBlock.package = package = name
Run Code Online (Sandbox Code Playgroud)

错误是

错误 - 解析错误.之后缺少名字.运营商**

name上面是函数内的局部变量,inBlock是一个输入参数.package除了该错误行之外,函数中没有任何地方声明.

我想这可能是由于packageJavaScript中的保留关键字?知道JavaScript中的包是什么以及如何修复它?

Tim*_*nes 15

你是对的,package是JavaScript中的保留字(但只有严格的模式,这将是代码在某些地方工作的原因).

package是未来保留的,这意味着它不用于任何东西,但你不能用它来命名变量.但是(如果你真的必须),你可以使用它来命名对象中的键,如下所示:

inBlock['package'] = name;  // this is ok
Run Code Online (Sandbox Code Playgroud)

只要你使用一个字符串.你不能这样做:

inBlock.package = name;  // this is not ok
Run Code Online (Sandbox Code Playgroud)

我会说你最好把它命名为别的东西.