箭头函数通过省略function和return关键字使代码更简洁直白,自动返回单表达式结果,支持参数括号省略、继承外层this、扁平化链式调用,但不可用作构造函数。

箭头函数能减少冗余语法,让回调、映射和简单操作更紧凑,但关键不是“写得短”,而是让逻辑更直白、上下文更清晰。
省掉 function 和 return 的重复
当函数体是单个表达式时,箭头函数自动返回结果,无需显式写 return 和花括号。这对数组方法特别友好:
-
普通函数:
arr.map(function(x) { return x * 2; }) -
箭头函数:
arr.map(x => x * 2)
注意:如果参数只有一个,可省括号;多个或零个参数必须加括号,比如 (a, b) => a + b 或 () => console.log('hi')。
避免 this 绑定混乱
箭头函数不绑定自己的 this,而是继承外层作用域的 this。在事件处理或定时器中,它天然解决常见陷阱:
如果你了解HTML,CSS和JavaScript,您已经拥有所需的工具开发Android应用程序。本动手本书展示了如何使用这些开源web标准设计和建造,可适应任何Android设备的应用程序 - 无需使用Java。您将学习如何创建一个在您选择的平台的Android友好的网络应用程序,然后转换与自由PhoneGap框架到一个原生的Android应用程序。了解为什么设备无关的移动应用是未来的潮流,并开始构建应用程序,提供更
- 类方法里用
setTimeout(() => this.update(), 100),不用再提前bind(this)或用变量存const self = this - React 函数组件中,事件回调如
onClick={() => setCount(c => c + 1)}更简洁且无 this 问题
嵌套逻辑变扁平,少写括号
链式调用中连续使用箭头函数,能避免层层缩进和多余花括号:
- 过滤偶数并平方:
[1,2,3,4].filter(x => x % 2 === 0).map(x => x ** 2) - 比传统写法少 6 个单词(function、return、两个花括号、两个分号),语义没损失
但别为了省字符硬套——如果逻辑超过一行或需要调试,加上花括号和 return 反而更易读。
注意不能用作构造函数
箭头函数没有 prototype,也不能用 new 调用。需要实例化对象时,仍得用传统函数或 class。
- ✅ 正确:
const add = (a, b) => a + b; - ❌ 错误:
const Person = (name) => ({ name }); new Person('Alice'); // TypeError
这不是缺陷,而是设计使然——明确区分“行为”和“实体”的创建方式。










