停止编写 for 循环。现代 JS 依赖于函数式编程方法:Map, Filter 和 Reduce。
管道 (链式调用)
干净代码的力量
你可以像乐高积木一样将方法连接在一起。一个方法的输出变成下一个方法的输入。
javascript
const products = [
{ name: "Laptop", price: 1000, inStock: true },
{ name: "Phone", price: 500, inStock: false },
{ name: "Tablet", price: 300, inStock: true }
];
// 目标:获取可用商品的总价值
const totalValue = products
.filter(item => item.inStock) // 1. 移除无库存的
.map(item => item.price) // 2. 只提取价格
.reduce((acc, price) => acc + price, 0); // 3. 求和
console.log(totalValue); // 1300 (1000 + 300)Map vs ForEach
当你想要创建一个新数组时使用 map。当你只想做某事(如打印到控制台)而不返回任何内容时使用 forEach。