Как выполнить деконструкцию массива, а затем одновременно получить значение деконструированного объекта в JavaScript? - PullRequest
2 голосов
/ 19 марта 2020

Пожалуйста, посмотрите этот минимальный пример

const [one, two, three] = [
  { name: "Joseph" },
  { name: "Amy" },
  { name: "Jim" }
];

Я могу деконструировать массив первого уровня, как я могу сделать это со вторым уровнем следующим образом:

const [oneName: one.name, twoName: two.name, threeName: three.name] = [
  { name: "Joseph" },
  { name: "Amy" },
  { name: "Jim" }
];

Это псевдокод, синтаксис неправильно, но вы поняли.

Возможно ли сделать это в JavaScript?

1 Ответ

7 голосов
/ 19 марта 2020

Это немного похоже на то, как если бы вы объявляли массив объектов, только с const перед ним. Вместо того, чтобы помещать значения в правую часть :, поместите имя новой переменной, чтобы поместить туда строку:

const [{name: oneName}, {name: twoName}, {name: threeName}] = [
  { name: "Joseph" },
  { name: "Amy" },
  { name: "Jim" }
];

console.log(oneName);
console.log(twoName);
console.log(threeName);

Но хотя это возможно, это странно и (IMO) довольно нечитаемо. Я бы не рекомендовал это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...