语法:const {} = variableName,谁能解释或指出我正确的方向

IT技术 javascript reactjs ecmascript-6
2021-04-08 09:31:46

这个语法在 JavaScript 中是什么意思(可能是 ES6):

const {} = 变量名;

我目前正在尝试掌握 React。在很多例子中,我都遇到过这种语法。例如:

const {girls, guys, women, men} = state;
1个回答

首先,这与 React 无关。它是 ECMAScript 6(或 JavaScript 2015,如果您愿意)的一部分。

您在此处看到的称为Destructuring assignment

const {girls, guys, women, men} = state;

// Is the same as

const girls = state.girls;
const guys = state.guys;
const women = state.women;
const men = state.men;



在学习 React 时,您可能会遇到类似的情况:

import { methodA, methodB } from "my-module";

在这种情况下,您有一个称为my-module公开某些功能的module使用import {} from语法选择要导入的函数。请注意,这不是解构赋值,尽管它以类似的方式工作。

它也适用于函数参数 function({ a, b }) {}
2021-05-24 09:31:46
也适用于数组: const { a, b, c } = ['A', 'B', 'C'];
2021-05-28 09:31:46
它们被称为命名参数
2021-06-04 09:31:46
@Bergi 你是对的,但是由于 OP 被解构混淆了,我认为他学习导入符号可能会有所帮助。我更新了答案以说明它们不是一回事。
2021-06-11 09:31:46
请注意,导入语法与解构完全不同。虽然它在速记符号上看起来很相似,但它使用了as代替:并且不可嵌套。
2021-06-13 09:31:46