箭头函数与普通函数的区别

135 阅读1分钟

箭头函数比普通函数更加简洁

  • 没有参数,直接用写括号
  • 只有一个参数,可也省略括号
  • 如果有多个参数,用逗号分隔
  • 函数体返回值只有一句,可以省略大括号

箭头函数没有自己的this

箭头函数继承来的this指向不会改变

call()、apply()、bind()等方法不能改变箭头函数中this的指向

箭头函数不能当成一个构造函数

  • 因为箭头函数没有自己的this,它的this其实是继承了外层执行环境中的this,且this指向永远不会变,并且箭头函数没有原型prototype,没法让他的实例的__proto__属性指向,所以箭头函数也就无法作为构造函数,否则用new调用时会报错!