箭头函数

es6允许使用"箭头"(=>)定义函数。

1.根据参数的不同分几种情况:

  ()=>  //没有参数的时候

  x=>  //只有一个参数的时候

  (x,y)=>  //有多个参数的时候

2.大括号{}被解释为代码块,如果箭头函数的代码块部分多于一条语句,就要使用{}将他们阔起来,用return语句返回。

    var add = (num1,num2)=>{
        var sum;
        if(num1 ==15){
            sum = num1 +num2;
        }
        else{
            sum = 20;
        }
        return sum;
    }
    console.log(add(15,15));  //30

当然,=>后面也不一定非得接return之后的语句

    $("#btn-ok").on("click",()=>{
        bindEvent();
        fn();        
    });
    function bindEvent() {
        /***绑定onbeforeunload事件****/
        window.onbeforeunload = function() {
            return "确定离开页面吗?";
        }
    }
    function fn() {
        console.log("yes");
    }

注意:多行语句要用{}括起来,单行语句不用,并且会作为函数的返回值。

var sum = (num1,num2) =>num1+num2;
console.log(sum(9,9));     //18
    ♥ x=>x*x;
    ♥ x=>{return x*x}
    ♥ x=>return x*x //报错,不能省略{}
    ♥ x=>x*x;    //合法的,没有定义返回值,返回undefined 

箭头函数返回一个对象,必须在对象外面加上一个(),否则会报错

let getTempItem = id => ({ id: id, name: "Temp" });

箭头函数可以与变量结合使用

    const full = ({ first, last }) => first + ' ' + last;
    // 等同于
    function full(person) {
      return person.first + ' ' + person.last;
    }

  

原文地址:https://www.cnblogs.com/wangwenhui/p/7739820.html