sindresorhus/eslint-plugin-unicorn

Improve `prefer-set-has`

Closed

#1,338 opened on Jun 4, 2021

 (2 comments) (3 reactions) (0 assignees)JavaScript (468 forks)user submission
enhancementhelp wanted

Repository metrics

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

Description

Currently, we only report cases that Array only called .includes(). But in some other cases, it should still be preferred.

const foo = [1, 2, 3];

if (foo.includes(1));

// Still work the same if we use `Set`
for (const element of foo);
const bar = [...foo, somethingElse];
call(...foo);
const length = foo.length; // Use `.size` when switch to Set

// Even this, if the callback don't use the second parameter, they are the same
foo.forEach(element => call(element));

We only need make sure the original Array have unique values.

Contributor guide