- 外形不同:
- 语法糖这个就不说了
- 箭头函数只能是匿名函数,function函数可以是匿名函数,也可以是具名函数
- 箭头函数的this指向问题
- 可以说箭头函数本身没有this,但是在它声明时可以捕获别人的this供自己使用
- 特别说明:this一旦被捕获,以后将不再变化
- 最终:箭头函数中的this是在它声明时捕获它所处作用域中的this。
- 非箭头函数中,this总是指向调用函数的对象。
- 箭头函数不能用于构造函数
- 注意: 箭头函数没有本身没有this,也没有prototype属性,所以无法作为构造器(constrctor)使用
- 报错: Uncaught TypeError: [此箭头函数变量名] is not a constructor
- .箭头函数不具有arguments对象
- 其他区别:
- 箭头函数不能Generator函数。
- 箭头函数不具有prototype原型对象。
- .箭头函数不具有super。
- 箭头函数不具有new.target。