Equality operator may cause type coercion
Reports a usage of an equality operator that may cause unexpected type coercions. Suggests replacing ==
and !=
with type-safe equality operators ===
and !==
.
Depending on the option selected, one of the following cases will be reported:
All usages of
==
and!=
operators.All usages except comparison with null. Some code styles allow using
x == null
as a replacement forx === null || x === undefined
.Only suspicious expressions, such as:
==
or!=
comparisons with0
,''
,null
,true
,false
, orundefined
.
Locating this inspection
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
-EqualityComparisonWithCoercionJS- Via Settings dialog
Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.
Inspection options
Here you can find the description of settings available for the Equality operator may cause type coercion inspection, and the reference of their default values.
- Highlight usages of '==' and '!='
Default setting: All except when comparing with null or typeof
Other available settings:
All
Only suspicious expressions
Inspection Details | |
---|---|
By default bundled with: | CLion 2024.2, GoLand 2024.2, IntelliJ IDEA 2024.2, JetBrains Rider 2024.2, PhpStorm 2024.2, PyCharm 2024.2, Qodana for .NET 2024.2, Qodana for Go 2024.2, Qodana for JS 2024.2, Qodana for JVM 2024.2, Qodana for PHP 2024.2, Qodana for Ruby 2024.2, RubyMine 2024.2, WebStorm 2024.2 |
Can be installed with plugin: | JavaScript and TypeScript, 242.22907 |