是否可以在对象键中进行算术运算?

mik*_*ana 3 javascript key object

我有一个对象,其中键是任意值:

{
  1300: 'banana',
  267000: 'cheese',
  4000000: 'goat'
}
Run Code Online (Sandbox Code Playgroud)

在某些情况下,如果我做一些数学计算会更清楚,例如:

12 * 1000 * 1000: 'horse',
Run Code Online (Sandbox Code Playgroud)

在JavaScript中可以用键做数学吗?

我试过了:

(12 * 1000 * 1000): 'horse',
Run Code Online (Sandbox Code Playgroud)

但这是一个语法错误.

Roc*_*mat 9

如果您的浏览器支持ES6,那么您可以使用"计算密钥".语法接近您的尝试.如果你使用[],它应该工作:

{
    [12 * 1000 * 1000]: 'horse'
}
Run Code Online (Sandbox Code Playgroud)

文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names

浏览器支持:Chrome,Firefox 34 +,Safari 7.1+

  • 这是乘法,所以舍入错误不会有问题.如果使用分裂,那么可能吗?对? (2认同)