參考官方文檔:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/Arrow_functions
其中說:
// 當箭頭函數的函數體只有一個 `return` 語句時,可以省略 `return` 關鍵字和方法體的花括號 elements.map(element => element.length); // [8, 6, 7, 9]
以及:
箭頭函數可以有一個“簡寫體”或常見的“塊體”。
在一個簡寫體中,只需要一個表達式,並附加一個隱式的返回值。在塊體中,必須使用明確的
return
語句。var func = x => x * x; // 簡寫函數 省略return var func = (x, y) => { return x + y; }; //常規編寫 明確的返回值
總結一下,如果箭頭函數中只有一句return,那么可以同時省略大括號與return;但如果使用了大括號,即使只有一句表達式,也必須有return。
備忘。