箭头函数和普通函数的区别
| 特性 | 箭头函数 | 普通函数 |
|---|---|---|
| 语法 | 简洁,使用 => 定义 | 使用 function 定义 |
this 绑定 | 词法绑定,继承外层 this | 动态绑定,调用时决定 |
arguments 对象 | 没有,需要使用 ...args | 有自己的 arguments 对象 |
| 是否能作为构造函数 | 不能 | 可以 |
是否有 prototype 属性 | 没有 | 有 |
是否支持 bind/call/apply | 不支持改变 this 指向 | 支持 |
| 适用场景 | 用于回调函数、闭包、需要继承外层 this 的场景 | 需要动态绑定 this,或用作构造函数时 |