768 B
768 B
title, impact, impactDescription, tags
| title | impact | impactDescription | tags |
|---|---|---|---|
| Combine Multiple Array Iterations | LOW-MEDIUM | reduces iterations | javascript, arrays, loops, performance |
Combine Multiple Array Iterations
Multiple .filter() or .map() calls iterate the array multiple times. Combine into one loop.
Incorrect (3 iterations):
const admins = users.filter((u) => u.isAdmin);
const testers = users.filter((u) => u.isTester);
const inactive = users.filter((u) => !u.isActive);
Correct (1 iteration):
const admins: User[] = [];
const testers: User[] = [];
const inactive: User[] = [];
for (const user of users) {
if (user.isAdmin) admins.push(user);
if (user.isTester) testers.push(user);
if (!user.isActive) inactive.push(user);
}