// returnがなくても返るケース
const hoge = () => ({a:1, b:2});
// returnが必要なケース
const fuga = () => {
const obj = {a:1, b:2};
return obj;
}
この違いは、式の返り値がどうなっているかの違いです!
iTerm上だと、
> {a:1, b:2}
{a:1, b:2}
> const obj = {a:1, b:2}
undefined
こんな感じになると思うのですが、変数定義の返り値はundefinedなので2文以上の場合は基本returnが必要になる。
参考:https://iwb.jp/javascript-arrow-function-omits-return-tips/