Фигурные скобки в функциях со стрелками

Кто-нибудь, пожалуйста, объясните следующее:

Я слежу за лекциями Дана Абрамова и выполняю упражнения.

Код работает нормально, однако тесты не выполняются, когда написана следующая конкретная функцияс фигурные скобки**{ }**.

    case 'toggleTodo' :
        return (
            state.map( (one) => {
                oneTodo( one, action )
            })
        );

Тот же код работает отличнобез фигурные скобки.

    case 'toggleTodo' :
        return (
            state.map( (one) => 
                oneTodo( one, action )
            )
        );

Вот JsBin, Пожалуйста, обратитесь к строке 31 и далее.

 Felix Kling16 февр. 2016 г., 19:37
Глядя наДокументация MDN должен ответить на ваш вопрос.

Ответы на вопрос(2)

блок, содержащий список утверждений. Вам нужно использоватьreturn заявление явно, чтобы заставить функцию возвращать что-то.

Если вы опустите скобки, функция стрелки имеетлаконичное тело, который состоит исключительно из одного выражения, результат которого неявно станет возвращаемым значением функции.

 armyofda12mnkeys13 дек. 2016 г., 07:10
Спасибо за объяснение @Bergi, теперь разбираюсь вместе с кодом madox2 выше.
 Suraj Jain29 янв. 2019 г., 06:48
Можете ли вы включить код тоже, чтобы сделать его самодостаточным ответом.
Решение Вопроса
case 'toggleTodo' :
    return (
        state.map( (one) => 
            oneTodo( one, action )
        )
    );

равно:

case 'toggleTodo' :
    return (
        state.map( (one) => {
            return oneTodo( one, action )
        })
    );

см. заявление о возврате

Ваш ответ на вопрос