箭头函数(Arrow Functions)

一、更简洁的写法

1.原来的写法

function method(params){
  return params*2;
}

2.箭头函数

(params)  => {params*2;} 

一行搞定。

a.若只有一个参数,括号可省略

params  => {params*2;} 

b.若只有一个表达式,花括号可省略

params => params*2;

二、不会改变this指向

例:实现a++

var Method = function(){
  this.a = 0;
  this.timer = setInterval(function(){
    this.a++;
    console.log(this.a);
  },1000);
}
var method = new Method();

输出:

NaN
NaN
NaN
...

因为在setInterval函数中,this,指向windows,windows中的a未定义,所以无法输出想要的值。

修改为箭头函数,则可实现a++;

var Method = function(){
  this.a = 0;
  this.timer = setInterval(() => {
    this.a++;
    console.log(this.a);
  })
}
var method = new Method();

输出:

1
2
3
...
posted on 2020-03-30 23:43  小林同学~  阅读(118)  评论(0)    收藏  举报