我可以在对象声明中进行数组解构赋值吗?

Lar*_*y N 2 javascript

我知道我可以这样做:

const [MIN_SPEED, MAX_SPEED] = [0.4, 4.0];
Run Code Online (Sandbox Code Playgroud)

我想要的是:

const SpeedManager = {
  [MIN_SPEED, MAX_SPEED]: [0.4, 4.0]
}
Run Code Online (Sandbox Code Playgroud)

这相当于:

const SpeedManager = {
  MIN_SPEED: 0.4,
  MAX_SPEED: 4.0
}
Run Code Online (Sandbox Code Playgroud)

但语法无效,我该如何实现?

Cer*_*nce 5

这是不可能的 - 任何涉及解构的内容都需要为引用赋值(独立变量名称或嵌套属性)。但是在这里,您没有引用,至少在对象初始值设定项中没有引用。

我会坚持使用非破坏性方法,尽管一个丑陋的选择是:

const SpeedManager = {};
([SpeedManager.MIN_SPEED, SpeedManager.MAX_SPEED] = [0.4, 4.0]);
console.log(SpeedManager);
Run Code Online (Sandbox Code Playgroud)