Деструктуризація обʼєктів
Деструктуризація об'єктів дозволяє розпаковувати значення властивостей об'єктів в окремі змінні. Це корисний і зручний спосіб отримати доступ до властивостей об'єкта. Зазвичай дані приходять у вигляді згрупованих структур (обʼєкти і масиви) відтак доводиться використовувати синтаксис через крапку для доступу до властивостей.
Деструктуризація скорочує код, "витягаючи" властивості в окремі локальні змінні.
Деструктуризація завжди розташована у лівій частині операції присвоєння у фігурних дужках після ключового слова const або let. Назви деструктуризованих змінних мають чітко збігатися із властивостями обʼєкта, інакше це буде нова змінна із значенням undefined. Справа від операції присвоєння вказують обʼєкт, який потрібно деструктуризувати. Порядок оголошення змінних у фігурних дужках - неважливий.
При деструктуризації змінній можна задати значення за замовчанням. Тоді, якщо в обʼєкті такої властивості немає, то у змінної буде не значення undefined, а значення задане за замовчанням. Якщо ж така властивість є, то буде присвоєно значення з обʼєкта. Значення за замовчанням задається після символу присвоєння.
Зміна імені змінної при деструктуризації
При деструктуризації можна змінити ім'я змінної. Для цього спочатку вказують назву властивості в об'єкті, потім ставлять двокрапку, а потім нове ім'я змінної в яку будемо проводити деструктуризацію властивості.
Деструктуризація в циклах
Перебираючи масив об'єктів циклом for...of, можна проводити деструктуризацію всередині циклу. Буде проводитися деструктуризація на кожній ітерації.
Можна проводити деструктуризацію і беспосередньо у місці оголошення змінної обʼєкту. Але такий код може бути складно читабельний. Тому використовують, коли потрібно деструктуризувати мало змінних.
Глибока деструктуризація
Глибока деструктуризація об'єктів дозволяє розпаковувати вкладені властивості об'єктів у відповідні змінні. Це корисно, коли об'єкт має вкладену структуру і потрібен доступ до властивостей вкладених об'єктів. Використовуються вищезгадані принципи.
Деструктуризація в параметрах функцій
Деструктуризацію об'єктів також можна використовувати при роботі з параметрами функцій.
Last updated