Spec-Zone.ru › ESLint

no-eq-null

Запрещает сравнения с null без операторов проверки типа

Сравнение с null без оператора проверки типа (== или !=) может привести к непредусмотренным результатам, поскольку при сравнении не только с null, но и со значением undefined результатом будет true.

if (foo == null) {
  bar();
}

Подробнее о правиле

Правило no-eq-null помогает снизить вероятность ошибок и нежелательного поведения, гарантируя, что сравнения с null совпадают только с null, а не также с undefined. Поэтому оно отмечает сравнения с null при использовании == и !=.

Примеры неправильного кода для этого правила:

Открыть в Playground
/*eslint no-eq-null: "error"*/

if (foo == null) {
  bar();
}

while (qux != null) {
  baz();
}

Примеры правильного кода для этого правила:

Открыть в Playground
/*eslint no-eq-null: "error"*/

if (foo === null) {
  bar();
}

while (qux !== null) {
  baz();
}

Параметры

У этого правила нет параметров.

Когда не следует использовать это правило

Если вы хотите в целом требовать использования операций проверки типа, воспользуйтесь более мощным правилом eqeqeq.

Совместимость

  • JSHint: это правило соответствует правилу eqnull в JSHint.

Связанные правила

  • eqeqeq

Версия

Это правило появилось в ESLint v0.0.9.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/no-eq-null

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API