zoukankan      html  css  js  c++  java
  • es6(二) 箭头函数

    var f = () => 5;
    // 等同于
    var f = function () { return 5 };

    var sum = (num1, num2) => num1 + num2;

    var sum = (num1, num2) => { return num1 + num2};


    // 等同于
    var sum = function(num1, num2) {
      return num1 + num2;
    };

    箭头函数体内的this指向的是定义时所在的对象,而不是执行时所在的对象。箭头函数绑定this的指向,很大程度解决了过去this动态指向的困扰,可以大大减少显示绑定this对象的写法(call,apply,bind)。

    let obj1={fun:function(){
      setTimeout(function(){console.log(this)})
    }};
    obj1.fun();//Window,上例是传统的定义函数,this的指向改为了window,通常情况下,我们都是在setTimeout外面定义that=this来确定指向,解决问题。

     
    obj2={fun:function(){
      setTimeout(()=>console.log(this))
    }};
    obj2.fun();//Object(),箭头函数下的this指向并没有改变,而是指向obj2
     


     

  • 相关阅读:
    SQL Challenges靶机
    XSS靶机1
    djinn靶机
    Sunset靶机
    统计学 一 集中趋势
    测试
    测试
    统计学 一 集中趋势
    算法分析
    代码测试
  • 原文地址:https://www.cnblogs.com/geekjsp/p/9868079.html
Copyright © 2011-2022 走看看