箭头函数及this的四种情况

一、箭头函数

  // 含有两个参数

      const sum  = (num1,num2) => {
         return num1 + num2 
      }
 
  // 含有一个参数
      const sum1  = (num1) => {
        return num1 * num1 
      }
  // 其中,小括号可以省略掉
      const sum2  = num1 => {
        return num1 * num1 
      }
 
  // 当函数代码中只有一行代码
      const mul = (num1,num2) => num1 * num2;
     console.log(mul(20,30)) 
      const demo =  () => console.log('Hello Demo')
      demo();
 
备注:箭头函数的this是如何查找的?
  答:向外层作用域中,一层层查找this,直到有this的定义。

1.当在函数调用的时候指向window;

2.当方法调用的时候指向调用对象;

3.当用apply和call上下文调用的时候指向传入的第一个参数;

4.。构造函数调用指向实例对象

总结:如果是用new方式创建对象,this指向新建的那个对象;

      如果只是普通的调用,谁调用这个函数,函数里的this就指向谁。

 

posted @ 2019-08-03 15:55  天空003  阅读(184)  评论(0编辑  收藏  举报