Перейти к основному содержимому

Деструктуризация массивов и объектов

@serverSerrverlesskiy

Деструктуризация в JavaScript это синтаксис присваивания, который позволяет удобно, в одну строку, извлечь данные из массивов и объектов.

Деструктуризация объектов

object

Интерактивный редактор
Результат
Loading...

Свойства title, group и quantity, повторяют структуру объекта fruit и копируют свои значения в идентичные переменные находящиеся в {...}. Поэтому, если вы поменяете переменные в {...} местами, то код будет так же прекрасно работать, попробуйте в примере выше поменять переменные местами.

Видео

Вложенный объект

bookmark

Мы также можем деструктурировать вложенный объект.

Интерактивный редактор
Результат
Loading...

Другие названия

Если вам нужно использовать названия переменных отличные от названия свойств, то будет работать такой синтаксис:

Интерактивный редактор
Результат
Loading...

Дефолтные значения

Если в {...} вы напишете переменную свойства, которой не будут найдены, то ей присвоится значение undefined. Для назначения переменной дефолтного значение, это значение ей можно присвоить. Если вы попытаетесь присвоить значение переменной свойства которой будут найдены, то ей присвоится значение свойства. Рассмотрим на примере.

Dafault

Интерактивный редактор
Результат
Loading...

В title выводится значение свойства, а не то, что мы ей присваиваем. Свойства group в объекте fruit не существует, а переменной никаких значений мы не присваивали. Свойства quantity также не существует, но переменной мы присвоили значение 5.

Остаток

octatok

Если вам нужно получить из объекта одну переменную , а оставшиеся сгруппировать в другой объект, то используйте ... перед переменной из которой будет создан объект с оставшимися свойствами.

Интерактивный редактор
Результат
Loading...

Деструктуризация массивов

Деструктуризация массива происходит так же, как и у объекта. Единственная разница в том, что значения элементов массива будут присваиваться переменным в порядке определения элементов.

Take

Интерактивный редактор
Результат
Loading...

Остаток

По аналогии с объектами работает остаток.

Интерактивный редактор
Результат
Loading...

Копия массива

Пример создания копии массива.

Copia

Интерактивный редактор
Результат
Loading...

Объединение массивов

add

Пример объединения массивов в один.

Интерактивный редактор
Результат
Loading...

EnglishMoji!

Проблемы?

Problem

Пишите в Discord или телеграмм чат, а также подписывайтесь на наши новости

JavaScript Camp

Вопросы

Question

Деструктуризация - это?

  1. Функция
  2. Синтаксис
  3. Объект

При деструктуризации объекта, обязательно ставить переменные в том же порядке, в каком они находятся в объекте?

  1. true
  2. false

Что присвоится переменной, если в объекте не будет найдено идентичного свойства?

  1. error
  2. undefined
  3. unknown

Для того чтобы понять насколько вы усвоили этот урок пройдите тест в мобильном приложении в нашей школы по этой теме.

EnglishMoji!

Ссылки

  1. Learn JavaScript
  2. MDN Web Docs
  3. Деструктуризация в ES6

Contributors ✨

Thanks goes to these wonderful people (emoji key):


IIo3iTiv


Dmitriy Vasilev

💵

Resoner2005

🐛 🎨 🖋

Navernoss

🖋 🐛 🎨