箭头函数

函数写法:

()=>{

}

()里面放参数,当参数只有一个时,()可以省略;如果{}的表达式全部座位返回值时,{}也可省略。
例:

let events = [1,2,3,4,5];
let adds = events.map(v=>v+1);

等价于:

let events = [1,2,3,4,5];
let adds = events.map(function(v){return v+1})

箭头函数与function的主要区别在于this的绑定。
function的this是在执行时进行绑定的,而箭头函数的this是在声明时进行绑定的,这样避免了this指向不明确的问题。
最典型的例子:

var x=11;
var obj = {
    x:22,
    y:function(){
        console.log(this.x);
    }
}
console.log(obj.y);

打印出来是22,function的this在执行时绑定,绑定的是调用属性的对象,也就是obj自身的x,所以结果是22。

var x = 11;
var obj = {
      x:22,
      y:()=>{
           console.log(this.x);
      }
}

打印出来是11,因为箭头函数的this在声明时绑定,取x的值为11,所以结果是11。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容