箭头函数和普通函数区别?

箭头函数是普通函数的简写, 可以更优雅的定义一个函数, 和普通函数相比, 有以下几点差异:

  1. 函数体内的this对象, 就是定义时所在的作用域的this, 而不是使用时所在的对象
  2. 不可以使用arguments对象, 该对象在函数体内不存在. 如果要用, 可以使用rest参数代替
  3. 不可以使用yield命令, 因此箭头函数不能用作Generator函数
  4. 不可以使用new命令, 因为
  • 没有内部的[[Construct]]方法
  • 没有自己的this, 无法调用call, apply
  • 没有prototype属性, 而new 命令在执行时需要将构造函数的prototype赋值给新的对象的proto
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容