美文网首页
浅析ES6 箭头函数(上)

浅析ES6 箭头函数(上)

作者: richardch | 来源:发表于2017-03-09 02:01 被阅读0次

    最初接触 箭头函数 => 是在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 箭头函数(上)

          本文链接:https://www.haomeiwen.com/subject/lqaigttx.html