语法:const {} = variableName,任何人都可以解释或指出我正确的方向

Ang*_*o A 19 javascript ecmascript-6 reactjs

这种语法在JavaScript中意味着什么(可能是ES6):

const {} = variablename;

我目前正试图抓住React.在很多例子中,我遇到了这种语法.例如:

const {girls, guys, women, men} = state;
Run Code Online (Sandbox Code Playgroud)

Gio*_*Gpx 29

首先,这与React无关.它是ECMAScript 6的一部分(如果您愿意,还可以使用JavaScript 2015).

您在此处看到的称为解构分配:

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;
Run Code Online (Sandbox Code Playgroud)



在学习React时,你可能会遇到类似的模式:

import { methodA, methodB } from "my-module";
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您有一个被调用的模块my-module,它正在暴露一些函数.使用import {} from语法,您可以选择要导入的功能.请注意,这不是解构赋值,尽管它以类似的方式工作.

  • 也适用于数组:`const { a, b, c } = ['A', 'B', 'C'];` (3认同)
  • 请注意,导入语法与解构完全不同。虽然它在速记符号上看起来很相似,但它使用 `as` 而不是 `:`,并且不可嵌套。 (2认同)
  • @Bergi 你是对的,但由于 OP 被解构混淆了,我认为他学习导入符号可能会有所帮助。我更新了答案以说明它们不是一回事。 (2认同)