## 对 reduce 等基础的数组方法无法熟练组合运用
const movements = [200, 450, -400, 3000, -650, -130, 70, 1300];
const labelSumIn = document.querySelector('.summary**value--in');
const labelSumOut = document.querySelector('.summary**value--out');
const labelSumInterest = document.querySelector('.summary\_\_value--interest');
const calDisplaySummary = function (movements) {
// 复盘:写代码之前药想清楚通过什么方法?达成什么?
const incomes = movements
.filter(mov => mov > 0)
.reduce((acc, mov) => acc + mov, 0);
labelSumIn.textContent = `${incomes}$`;
const outcomes = movements
.filter(mov => mov < 0)
.reduce((acc, mov) => Math.abs(acc + mov), 0);
labelSumOut.textContent = `${outcomes}$`;
};
calDisplaySummary(account1.movements);
## 数组的灵活使用非常重要
- 使用数组方法带来的巨大优势,而不是简单的使用传统的循环
- 不应该过度使用链接,应该尝试优化他
- 当有非常大的数组,一个接一个的链接大量的方法可能会导致真实的性能问题
- 请不断寻找保持代码性能的机会