Javascript ES6使用动态密钥解构

Javascript ES6使用动态密钥解构,javascript,ecmascript-6,destructuring,Javascript,Ecmascript 6,Destructuring,在这种情况下,我们需要使用dynamic key来解析来自某个嵌套对象的数据,并按如下所示对其进行分解,是否需要按如下所示将其分配给某个别名。否则我会得到编译错误 const { [dynamicKey] : isAliasVarReqd } = data.something[dynamicKey] 假设“x”是一个必须被分解的值,我们可以使用方括号语法[removeProp]将其动态传递到分解语法中,就像对象查找一样(相反,这将基于动态传递的值创建一个新变量) 因为我们正在动态构造新变量,所

在这种情况下,我们需要使用dynamic key来解析来自某个嵌套对象的数据,并按如下所示对其进行分解,是否需要按如下所示将其分配给某个别名。否则我会得到编译错误

const { [dynamicKey] : isAliasVarReqd } = data.something[dynamicKey]

假设“x”是一个必须被分解的值,我们可以使用方括号语法[removeProp]将其动态传递到分解语法中,就像对象查找一样(相反,这将基于动态传递的值创建一个新变量)


因为我们正在动态构造新变量,所以需要使用:remove将其重新分配给新名称。

如果不将其分配给别名,变量名称将是什么?请编辑thq问题并显示问题代码,而不是工作代码。JavaScript没有动态局部变量,那么,在对其进行分解后,您将如何使用该值呢?“您需要为其指定一个变量。您不能使用“计算”变量名,因为这将违反标识符静态范围解析的规则。”这就是OP目前所做的。问题是,这是可以避免的。
const someData = { x: 1, y: 2, z: 3 };
const removeProp = 'x';

const { [removeProp]: remove } = someData;

console.log(remove); // 1