基本語法
(參數(shù)1, 參數(shù)2, …, 參數(shù)N) => { 函數(shù)聲明 }
//相當(dāng)于:(參數(shù)1, 參數(shù)2, …, 參數(shù)N) =>{ return 表達(dá)式; }
(參數(shù)1, 參數(shù)2, …, 參數(shù)N) => 表達(dá)式(單一)
// 當(dāng)只有一個參數(shù)時,圓括號是可選的:
(單一參數(shù)) => {函數(shù)聲明}
單一參數(shù) => {函數(shù)聲明}
// 沒有參數(shù)的函數(shù)應(yīng)該寫成一對圓括號。
() => {函數(shù)聲明}
高級語法
//加括號的函數(shù)體返回對象字面表達(dá)式:
參數(shù) => ({ foo :bar })
//支持剩余參數(shù)和默認(rèn)參數(shù)(參數(shù)1,參數(shù)2,...rest)=>{函數(shù)聲明}
(參數(shù)1=默認(rèn)值1,參數(shù)2,…,參數(shù)N=默認(rèn)值N)=>{函數(shù)聲明}
//同樣支持參數(shù)列表解構(gòu)
let f = ( [ a, b ] = [ 1, 2 ] , { x : c } = { x : a + b } ) => a + b + c;
f();? // 6