JS 箭头函数和普通函数的区别

120 阅读1分钟

简介

ES6标准新增了一种新的函数:Arrow Function(箭头函数)。 为什么叫Arrow Function?因为它的定义用的就是一个箭头。

箭头函数的特点

  • 更简洁的语法
  • 没有this
  • 不能使用new 构造函数
  • 不绑定arguments,用rest参数...解决
  • 使用call()apply()调用
  • 捕获其所在上下文的 this 值,作为自己的 this
  • 箭头函数没有原型属性
  • 不能简单返回对象字面量
  • 箭头函数不能当做Generator函数,不能使用yield关键字
  • 箭头函数不能换行

箭头函数的 this 永远指向其上下文的 this ,任何方法都改变不了其指向,如 call() , bind() , apply();普通函数的this指向调用它的那个对象。