Подавить «Ожидаемый» === и вместо этого увидел «==».ошибка в jslint - PullRequest
28 голосов
/ 11 июня 2011

Как я могу остановить появление сообщения об ошибке Expected '===' and instead saw '=='. в jslint.Кажется, не вариант.

Ответы [ 3 ]

24 голосов
/ 01 ноября 2015

Для тех, кто использует JSHint, вы можете отключить это предупреждение, установив для параметра eqeqeq значение false в опциях JSHint (обычно .jshintrc )

"eqeqeq": false

Из документации: http://jshint.com/docs/options/#eqeqeq

Редактировать:

Если вы хотите быть хорошим гражданином и исправить свой код, чтобы использовать рекомендуемое сравнение вместо отключения предупреждения, убедитесь, что обе стороныиз сравнения используют тот же тип.

Например:

"123" == 123          // true, I'm lazy and JSHint hates me
"123" === 123         // false, no love
Number("123") === 123 // true, no warning
11 голосов
/ 13 июня 2011

Это довольно жарко в прессе.

Дуглас Крокфорд только что добавил опцию 'eqeq' в инструмент JSLint.

См. Одно из изменений от 12 июня 2011 года на GitHub:

https://github.com/douglascrockford/JSLint/commits/2e8d430b5b9543caefb3743513181f1295f52ddf/jslint.js

На момент написания этой статьи она не была обновлена ​​на главной странице JSLint, но я проверил ее, выполнив следующие действия, и не получил == предупреждений, связанных с:

/*jslint eqeq: true*/
var x = 0;
if (x == 1) {
    alert("test");
}
3 голосов
/ 11 июня 2011

Вы правы, что для этого нет выбора.Единственный способ - использовать === или изменить исходный код .Я почти всегда использую ===.В целом лучше, если вы не знаете, что == - это действительно , что вы хотите.

...