代码优化

当你多个方法结合在一起时,它们会对所有元素进行多次运算。对于少量数据来说,这其实没有什么区别,但当数组变大时,计算时间就会变长。

1
2
3
4
5
6
7
8
9
// Bad
arr.map(e => f(e)).filter(e => test(e)).reduce(...)

// Good
arr.reduce((result, element) => {
const mappedElement = f(element)
if(test(mappedElement)) result.push(mappedElement)
return result
}, [])