Деструктуризация (destructuring assignment) – метод присваивания, при котором можно присвоить массив или объект сразу нескольким переменным, разбив его на части.
Объект
// let {prop : varName = default, ...} = object
let boeing = {
name: 'Boeing 777',
type: 'Пассажирский самолёт',
manufacturer: 'Boeing Commercial Airplanes',
firstFlight: '12 июня 1994 года',
operators: {
'Emirates' : 158,
'United Airlines' : 96,
'Air France' : 64,
'Cathay Pacific' : 61
},
};
let {operators} = boeing; // фигурные скобки
console.log( operators );
// {Emirates: 158, United Airlines: 96, Air France: 64, Cathay Pacific: 61}
let {name, ...props} = boeing;
console.log( name );
console.log( props );
Массив
// let [var1 = default, var2, ...rest] = array
let {firstFlight} = boeing
firstFlight = firstFlight.split(' ');
console.log( firstFlight );
// ['12', 'июня', '1994', 'года']
let [day, month, year, ...rest] = firstFlight; // квадратные скобки
console.log( day );
// 12
console.log( month );
// июня
console.log( year );
// 1944
console.log( rest );
// ['года']
let [, , Y ] = firstFlight; // выбираем только 1 значение
console.log( Y );
// 1944
function getPlanet()
{
return 'планета Земля';
}
let [ , , y, , epoch = 'После РХ', planet = getPlanet() ] = firstFlight; // значения по умолчанию
console.log( y, epoch, planet );
// 1994 После РХ планета Земля
Комментарии
0Нашли ошибку или хотите дополнить материал?