Можно всегда проверять это для большего количества настраиваемых решений:
x => ({}[x.name] = x);
const getUser = user => {return { name: user.name, age: user.age };};
const user = { name: "xgqfrms", age: 21 };
console.log(getUser(user));
// {name: "xgqfrms", age: 21}
const getUser = user => ({ name: user.name, age: user.age });
const user = { name: "xgqfrms", age: 21 };
console.log(getUser(user));
// {name: "xgqfrms", age: 21}
, тот же ответ может быть найден здесь!
https://github.com/lydiahallie/javascript-questions/issues/220
https://mariusschulz.com/blog/returning-object-literals-from-arrow-functions-in-javascript
, Когда Вы делаете, делают:
p => {foo: "bar"}
интерпретатор JavaScript думает, что Вы открываете составной блок кода, и в том блоке, необходимо явно упомянуть оператор возврата.
, Если Ваш выражение function стрелки имеет отдельный оператор , то можно использовать следующий синтаксис:
p => ({foo: "bar", attr2: "some value", "attr3": "syntax choices"})
, Но если Вы хотите иметь несколько операторов затем, можно использовать следующий синтаксис:
p => {return {foo: "bar", attr2: "some value", "attr3": "syntax choices"}}
В вышеупомянутом примере, первый набор фигурных скобок открывает составной блок кода, и второй набор фигурных скобок для динамических объектов. В составном блоке кода функции стрелки необходимо явно использовать операторы возврата
для получения дополнительной информации, проверить Документы Mozilla на Выражения function Стрелки JS