概要
arrow function を使って return が必要なケースと必要でないケースがあったのを忘れていたので書いておきます。
サンプル
-
(arg => )
の場合は return はいらない。
const keys = ['a', 'b']
const text = 'aaaaa'
const result = keys.filter(key => text.includes(key));
console.log(result);
> [ 'a' ]
-
(arg => {})
の場合は return が必要。
const keys = ['a', 'b']
const text = 'aaaaa'
const result2 = keys.filter(key => {
text.includes(key);
});
console.log(result2);
> []
const result3 = keys.filter(key => {
return text.includes(key);
});
console.log(result3);
> [ 'a' ]
まとめ
curly brackets(braces)
を使う際は return
が必要。
参考
簡潔文体 (concise body) においては、単一の式だけが記述できるので、その式が明示的に return される値となります。
しかし、ブロック文体においては、自動的に return はされないので、明示的に return 文を使用する必要があります。