我們每次撰寫匿名函式,都使用function實字來宣建立,每次都打Function這幾個字未免有些麻煩。在ES6開始我們可以()=>來宣告匿名函式,因為=>符號看起來像箭頭,所以被稱為箭頭函式(Arrow Function)。
例如
function (i,j){
return i+j;
}
對應的箭頭函式為
(i,j)=>{return i+j;}
若大括號中的程式內容只有一行的話,那麼我們的可以省略大括號與分號(省略大括號就必須省略分號),變成以下
變成如下:
(i,j)=>return i+j
若要傳入的參數只有一個,可以省略參數的括號(),變成以下
i => return i
let arr = [1,2,3];
arr.forEach(function(e){
console.log(e*e);
}
);
//透過箭頭函式可以簡化成以下
arr.forEach((e)=>{
console.log(e*e);
}
);
//進一步可以簡化成以下
arr.forEach((e)=> console.log(e*e) );
//再進一步可以簡化成以下
arr.forEach( e => console.log(e*e) );
如果昨天的立即執行函式改用箭頭函式來表示,就會變成以下
(i=> i*i)(5);
執行結果: