JS----箭头函数

箭头函数相当于其他语言的Lambda表达式或闭包语法, 是一种对普通函数的简化写法

语法格式如下:

(param1,param2,...,paramN)=> { statements }

相当于如下函数:

function (param1,param2,...,paramN) {
    statements ;
}

省略方式: 

  • 如果执行体只有一条return语句, 允许省略return关键词和花括号:
(param1,param2,...,paramN)=> result;
//等同于:
//(param1,param2,...,paramN)=>{return result;}
  • 如果形参列表只有一个参数, 允许省略圆括号
  • 如果不需要形参,圆括号不能省略,必须写空括号()

注意:

箭头函数与普通函数并不完全相等, 箭头函数并没有自己的this关键字,

对于普通函数的this指创建的对象, 直接调用的普通函数this代表window

那箭头函数中的this指的是谁呢?

箭头函数的this指的是上下文, 也就是包含箭头函数的外层函数, 如果箭头函数定义在全局范围内this指window本身

箭头函数不允许在形参列表和箭头之间换行,否则报语法错误

箭头函数与其他运算符在一起时, 可能由于解析顺序导致错误, 因而与其他运算符在一起时应该把箭头函数整体放在圆括号里

箭头函数的引入有两个方面的作用:

  1. 更简短的函数书写,

  2. 对 this的词法解析。

猜你喜欢

转载自blog.csdn.net/q5706503/article/details/82961943