Spec-Zone.ru › ESLint

no-eq-null

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

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

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.

Версия

Это правило было добавлено в 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