Skip to main content

Js Combine Iterations

Source: .agents/references/coding-standard/vercel-react-best-practices/rules/js-combine-iterations.md

Metadata

  • title: Combine Multiple Array Iterations
  • impact: LOW-MEDIUM
  • impactDescription: reduces iterations
  • tags: javascript, arrays, loops, performance

Content

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)
}