sindresorhus/eslint-plugin-unicorn

Rule proposal: `prefer-iterator-to-array`

Closed

#2,567 opened on Feb 20, 2025

 (2 comments) (3 reactions) (0 assignees)JavaScript (468 forks)user submission
help wantednew rule

Repository metrics

Stars
 (5,022 stars)
PR merge metrics
 (Avg merge 1d 16h) (399 merged PRs in 30d)

Description

Description

Iterator#toArray() is more clear to me that coverts iterator to array than [...iterator], especially when iterator is a long expression.

Examples

// ❌
[...map.values()].map(value => value * 2)

// ✅
map.values().toArray().map(value => value * 2)
map.values().map(value => value * 2).toArray()

Proposed rule name

prefer-iterator-to-array

Additional Info

Full list of Iterators https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Iterator#description

Contributor guide