淺析ES6 箭頭函數(上)

最初接觸 箭頭函數 => 是在C# 中的Lambda表達式, Lambda表達式作為CLR4 中新引入的語法糖 本質上就是個匿名函數, 整個Lambda表達式也可以看成是一個委托類型
在Javascript 中 如果要實現一個匿名函數, 大部分情況下是這么做的

$("#save-btn").click(function (event) {
.......
});

ES6 中引入了一種新的編寫匿名函數的語法,他的寫法非常簡單:
標識符=>表達式
function,return 關鍵詞, 以及一些大括號小括號統統可以省略,上述例子在ES6 中就可以這么寫:

$("#save-btn").click(event=>{
   .......
});

基本語法:
( ) => { … } // 零個參數用 () 表示;
x => { … } // 一個參數可以省略 ();
(x, y) => { … } // 多參數不能省略 ();


但是需要注意的是,多行語句需要用{}括起來單行表達式不需要{},并且會作為函數返回值
x => {returnx * x };// 函數返回 x * x
x => x * x;// 同上一行
x =>returnx * x;// SyntaxError 報錯,不能省略 {}
x => { x * x };// 合法,沒有定義返回值,返回 undefined

箭頭函數也可以使用剩余參數和默認參數。

var func1=(x =1, y =2)=>x + y;func1();//得到3
var func2=(x, ...args)=>{console.log(args) };
func2(1,2,3);//輸出 [2,3]
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 函數參數的默認值 基本用法 在ES6之前,不能直接為函數的參數指定默認值,只能采用變通的方法。 上面代碼檢查函數l...
    呼呼哥閱讀 3,477評論 0 1
  • 原文鏈接:https://github.com/EasyKotlin 值就是函數,函數就是值。所有函數都消費函數,...
    JackChen1024閱讀 6,067評論 1 17
  • 箭頭符號在JavaScript誕生時就已經存在,當初第一個JavaScript教程曾建議在HTML注釋內包裹行內腳...
    程序員之路閱讀 761評論 0 3
  • 1.函數參數的默認值 (1).基本用法 在ES6之前,不能直接為函數的參數指定默認值,只能采用變通的方法。
    趙然228閱讀 708評論 0 0
  • 晨跑把這節禮儀課余下的部分聽完!感覺自己棒棒噠!孩子的禮儀教育又有了更新更深刻的體會!加油!致努力的自己!
    花落花開_1168閱讀 267評論 0 1