Как деструктурировать вложенную переменную из массива - PullRequest
0 голосов
/ 11 октября 2019

мой объект выглядит так:

blogPost: {
  questions: 
    [
      {
        id: 234
      }
    ]
}

Я бы хотел деструктурировать id, но это не совсем правильно.

const {questions[0]: {id}} = blogPost

Ответы [ 2 ]

3 голосов
/ 11 октября 2019

Используйте также деструктуризацию массива , чтобы заставить его работать:

{questions:[{id}]}=blogPost

В качестве альтернативы, вы также можете использовать деструктуризацию объектов для массивов (массивы являются объектами), но это менее семантически:

{questions:{'0':{id}}}=blogPost

Это позволяет получить доступ к свойству другим способом: деструктуризация массива вызывает метод Symbol.iterator для итерации по массиву, в то время как деструктуризация объекта выполняет операцию [[Get]] только с указанными ключами.

0 голосов
/ 11 октября 2019

Попробуйте это:

const { questions } = blogPost;
const { id } = questions[0];
...