@uzi_no_uzi

Объясните как работает деструктуризация в данном случаи?

Не могу понять как работает деструктуризация в данном примере. В функцию map передается callback функция которая принимает в качестве аргументов три параметра, но в данном примере в аргументах деструктурируются две переменные, хотя никакого объекта не передается. Как это работает?
buttons = [
    {one: 'asd', two: 'some'},
    {one: 'asd', two: 'some'},
    {one: 'asd', two: 'some'}
]

buttons.map(({one, two}) => {
    return (`${one} ${two}`)
})
  • Вопрос задан
  • 214 просмотров
Решения вопроса 1
kshshe
@kshshe
Frontend developer
В функцию, которая передается map, передается при вызове первым аргументом элемент массива. Здесь название переменной для него заменено на {one, two}, поэтому one и two из текущего элемента записываются в соответствующие переменные.

Аналогичный код:

buttons.map((item) => {
    let one = item.one;
    let two = item.two;
    return (`${one} ${two}`)
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы