这是这个问题的特定特定的,它只能讨论键,如数字整数整数。
关于"属性名称的数字或字符串字面",我在Chrome Console中尝试过
var obj = { 2.15: 'foo' }
console.log(obj[2.15])
而且有效。我不会认为它在所有浏览器中,尤其是较旧的浏览器中的标准配置。但是,作为我用户提供的默认配置的一部分,这种关键表示法可能很有用。我认为使用Map
,尽管在标准范围内("任何值(对象和原始值都可以用作键或值"(可能会令人生畏。如果有效,为什么不使用它?
规范说:
PropertyName : IdentifierName StringLiteral NumericLiteral
并表明在A numericLiteral 。
中的浮子很好这是标准。如果愿意,请使用它。