我收到错误“SyntaxError:Unexpected token default” 在Chrome(+ Opera)中的任何对象上获取或设置属性“default”时。
({}).default
有人可以解释为什么会这样吗?
upd:每个人,PLZ,因为它对FF没有意义所以在测试时你可以错过这个bug。
答案 0 :(得分:8)
default
是JavaScript中的关键字(适用于switch
语句)。
在ECMAScript第五版中允许使用点属性访问器中的保留字(具体来说:点属性访问器的语法是MemberExpression . IdentifierName
[第12.2.1节]和IdentifierName
,与{{1不同},可能是Identifier
[第7.6节],但不是在ECMAScript第三版(它是ReservedWord
)中。第三版目前是所有浏览器支持的基准。
安全使用MemberExpression . Identifier
属性访问:
[]
或避免使用关键字作为属性名称。