Деструктуризація з пропуском елементів
Деструктуризація масиву з пропуском елементів - це дуже корисний прийом, коли тобі потрібно дістати тільки деякі значення, а решту пропустити.
Базовий приклад:
javascript
const arr = [10, 20, 30, 40];
const [first, , third] = arr;
console.log(first); // 10
console.log(third); // 30- Між комами стоїть порожнє місце (
,) - це пропуск елемента. - У цьому випадку пропускаємо другий елемент (
20).
Схема:
javascript
const [a, , c, , e] = [1, 2, 3, 4, 5];
console.log(a, c, e); // 1 3 5Кожна кома вказує позицію в масиві. Якщо хочеш пропустити значення - просто ставиш порожнє місце між комами.
Можна також використовувати rest (...) разом:
javascript
const [first, , ...rest] = [1, 2, 3, 4, 5];
console.log(first); // 1
console.log(rest); // [3, 4, 5]- Пропустили другий елемент (
2), - Решту зібрали в новий масив через
...rest.
З пропуском кількох підряд:
javascript
const arr = [100, 200, 300, 400, 500];
const [first, , , fourth] = arr;
console.log(first); // 100
console.log(fourth); // 400З деструктуризацією всередині вкладеного масиву:
javascript
const matrix = [
[1, 2],
[3, 4],
[5, 6]
];
const [, , [x, y]] = matrix;
console.log(x, y); // 5 6Пропустили перші два рядки і одразу дістали останній.
Коротко:
| Задача | Як зробити |
|---|---|
| Пропустити елемент | поставити зайву кому |
| Пропустити кілька | кілька ком підряд |
| Взяти решту | використати ...rest |
| Працює з | масивами, результатами функцій тощо |
Приклад з функцією:
javascript
function getCoords() {
return [10, 20, 30];
}
const [x, , z] = getCoords();
console.log(x, z); // 10 30Підсумок: Щоб пропустити елементи при деструктуризації, просто залиш порожнє місце між комами:
javascriptconst [a, , c] = [1, 2, 3]; // пропущено другий елементМожна також комбінувати з
...restдля ще більшої гнучкості.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.