const [a, , b] = [1, 2, 3];
console.log(a, b);
Деструктурирующее присваивание - это упрощенный способ выбрать определенные элементы из массивов или свойства из объектов и присвоить их переменным.
В данном фрагменте кода const [a, , b] = [1, 2, 3]; console.log(a, b);
мы видим применение этого функционала для массива. const [a, , b] = [1, 2, 3];
присваивает первой переменной (a
) первое значение из массива (1
), пропускает второе значение (2
), и присваивает следующей переменной (b
) следующее значение (3
).
При запуске этого кода в консоли, мы получим результат 1, 3
, что является правильным ответом на представленный вопрос.
Пример использования деструктурирования - это, к примеру, возможность быстро менять значения переменных местами. Стоит отметить, что при деструктурировании исходный массив или объект не изменяются.
let a = 1;
let b = 2;
[a, b] = [b, a];
//теперь a = 2, b = 1 - значения переменных заменились местами!
В знакомстве с этой возможностью JavaScript важно помнить про особенности её использования. Если мы попытаемся деструктурировать в переменную значение, которого нет (для массивов - значение за пределами длины массива, для объектов - несуществующее свойство), мы получим в эту переменную значение undefined
.
const [a, b] = [1];
console.log(a, b);
//в консоли выведется: 1, undefined
Деструктурирование - полезная и гибкая функциональность в современном JavaScript, позволяющая писать более чистый и читабельный код.