作用: 简化匿名函数, 简化回调函数和普通函数的写法
语法: () => {}, 小括号内书写形参, 大括号内写函数体
let fn = (msg) => {
  console.log('Hello' + msg)
}
简化语法
- 如果形参只有1个, 可以省略小括号
 - 方法体只有一行代码, 可以省略大括号, 省略大括号后, 默认返回此结果
 
//上例中的箭头函数可简化
let fn = msg => console.log('Hello' + msg)
fn('World!')
注:方法体只有一行代码,且省略了大括号,如果函数有return,则也省略。
也就是箭头函数只有一句代码并且省略大括号时,默认带有
return,再写return则会报错。
let fn = (a,b) => {
	return a + b
}
//可简化成
let fn = (a,b) => a + b
this指向
箭头函数的this指向的是外层作用域this的值
let myObj = {
  a: function () {
    console.log(this)
  },
  b: () => {
    console.log(this)
  }
}
myObj.a() // myObj
myObj.b() // window
其他
- 箭头函数不能用作构造函数, 不能和
new配合使用 - 不能使用
arguments