ES6基础 -- 箭头函数

箭头函数,简化的匿名函数
(parameters) => { statements };
  • 没有参数
() => { stamements };
  • 只有一个参数,可省略()
parameters => { statements };
  • 如果返回值只是一个表达式,可以省略{}
parameters => expression;
x => x*2;
  • this指向, 没!有!局部this的绑定
functionCounter(){
    this.num = 0;
    this.timer = setInterval(()=>{
        this.num ++;
        console.log(this.num);
    },1000)
}
var counterNum = new Counter(); //1,2,3...
  • 多个箭头函数
let add = x => y => x+y;

解析成es5

var add = function add(x){
      return function(y){
          return x + y;
      }
}

调用 add(2);

function(y){
  return x +y;
}

调用add(2)(3);

// 5

总结

  • 作用等同于
(x,y) => x+y;
  • 目的 : 最后一次调用之前的函数调用,是在为最后一次执行传递参数(至于为什么这么用,我也不理解)
    柯里化函数的雏形
  • 惰性求值(能不能说人话,小白表示听不懂)
  • 可以提前传递部分参数

你可能感兴趣的:(ES6基础 -- 箭头函数)