no-eq-null
Запретить сравнения null без операторов проверки типов
Сравнение с null без оператора проверки типов (== или !=) может привести к непредвиденным результатам, поскольку сравнение будет истинным не только при сравнении с null, но и с undefined значением.
if (foo == null) {
bar();
}
Подробное описание правила
Правило no-eq-null предназначено для уменьшения потенциальных ошибок и нежелательного поведения, гарантируя, что сравнения с null соответствуют только null, а не undefined. Таким образом, оно будет выводить предупреждения при сравнениях с null, когда используется == и !=.
Примеры неправильного кода для этого правила:
/*eslint no-eq-null: "error"*/
if () {
bar();
}
while () {
baz();
}
Примеры правильного кода для этого правила:
/*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