sindresorhus/eslint-plugin-unicorn

Improve `prefer-set-has`

Open

#1,338 opened on Jun 4, 2021

View on GitHub
 (2 comments) (3 reactions) (0 assignees)JavaScript (5,022 stars) (468 forks)user submission
enhancementhelp wanted

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