sindresorhus/eslint-plugin-unicorn

Rule proposal: Enforce `.toArray()` at the end of `Iterator` methods chain

Open

#2,767 opened on 2025年9月25日

GitHub で見る
 (5 comments) (1 reaction) (0 assignees)JavaScript (5,022 stars) (468 forks)user submission
help wantednew rule

説明

Description

Note that it's a good idea to call toArray() as a last step of your processing. For example, fibonacci().take(10).toArray().filter(...) is less efficient, because iterator helpers are lazy and avoids creating a temporary array.

From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Iterator/toArray

Examples

// ❌
foo.toArray().filter(...)
//            ^^^^^^ Array#filter()

// ✅
foo.filter(...).toArray()
//  ^^^^^^ Iterator#filter()

Proposed rule name

not sure

Additional Info

No response

コントリビューターガイド

Rule proposal: Enforce `.toArray()` at the end of `Iterator` methods chain · sindresorhus/eslint-plugin-unicorn#2767 | Good First Issue