gpt4 book ai didi

javascript - 如何解释[哪个] : part for the JavaScript expression ( { [which]: o[which] } = bar() );

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:58:58 27 4
gpt4 key购买 nike

网上遇到过如下代码:

function bar() {
return {
x: 4,
y: 5,
z: 6
};
}

var which = "x",
o = {};

( { [which]: o[which] } = bar() );

console.log( o.x );

据我了解,这段代码是 ES6 中引入的“解构语法”的示例。

我还了解到 o[which] 正在对象 o 中搜索名为 which 的键,如果找到,则返回值哪个键。

但我不太确定表达式的 [which]: 部分是如何工作的。

最佳答案

destructuring syntax , 当你看到 from : to ,这意味着由 from 标识的属性的值取自被解构的事物并分配给 to 标识的变量或属性.所以看看那一行:

( { [which]: o[which] } = bar() );

...我们看到 [which] 标识的属性值从 bar 返回的对象中检索并分配给 o[which] 标识的属性.自 [which]使用而不是 which ,它是 which确定取自 bar 的属性名称的变量的返回对象,就像在检索或设置对象的属性值时使用括号语法一样。

非解构版本看起来像这样:

const tmp = bar();
o[which] = tmp[which];

关于javascript - 如何解释[哪个] : part for the JavaScript expression ( { [which]: o[which] } = bar() );,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46140621/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com