sindresorhus/eslint-plugin-unicorn

Rule proposal: `no-negated-some-every`

Fermée

#1 704 ouverte le 25 janv. 2022

 (7 commentaires) (4 réactions) (0 personne assignée)JavaScript (468 forks)user submission
help wantednew rule

Métriques du dépôt

Stars
 (5 022 étoiles)
Métriques de merge PR
 (Merge moyen 1j 16h) (399 PRs mergées en 30 j)

Description

Description

I believe all negative Array.every() can write in positive Array.some()

[
    ![].every(() => true) === [].some(() => !true),
    ![0].every(() => true) === [0].some(() => !true),
    ![1].every(() => true) === [1].some(() => !true),
    ![].every(() => false) === [].some(() => !false),
    ![0].every(() => false) === [0].some(() => !false),
    ![1].every(() => false) === [1].some(() => !false),
]

Fail

if (!array.some(element => test(element)));
if (!array.every(element => test(element)));

Pass

if (array.every(element => !test(element)));
if (array.some(element => !test(element)));
if (!array.every(Boolean));

Extra

I'm not sure about this, maybe only simple cases?

if (
	  !array.some(element => {
	  	if (foo) {
			return true;
		}

	  	if (bar) {
			return false;
		}

		return baz;
	  })
);

Guide contributeur