@newuser8888

Зачем в параметрах при деструктуризации нужно заворачивать в круглые скобки ({}), ([]), а не прямо {}, []?

function dominantDirection (text) {
  let scripts = countBy(text, char => {
    let script = characterScript(char.codePointAt(0))
    return script ? script.direction : 'none'
    }).filter(({ name }) => name !== 'none')
  return scripts
}

Например здесь, NAME, почему без круглых скобок не робит? Сори за тупой вопрос.
  • Вопрос задан
  • 117 просмотров
Решения вопроса 1
mmmaaak
@mmmaaak
синтаксис стрелочной функции: () => {}, если аргумент один - можно упустить скобки, если это не добавит неоднозначности при интерпретации, также и про тело функции, если одна операция, можно упустить фигурные скобки, беря во внимание то, что ее результат будет возвращен как результат работы функции. Допустим уберем скобки у аргумента, он же по сути один, запись будет выглядеть так:
filter({ name } => ...);
откуда интерпретатору понять, хотел ли ты передать в качестве аргумента объект { name }, который развернется потом в { name: name }, тогда дальнейший код будет невалидным
filter(/* передать объект как аргумент можно */{ name: name } /*   а дальнейшее не валидно -> */  => ...)

, или же это стрелочная функция, чтоб дать понять интерпретатору, что ты имеешь ввиду передаваемый объект как аргумент, будь добр - оберни список аргументов, как это подобает исходному синтаксису стрелочных функций
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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