Disallow Bitwise Operators (no-bitwise)
The use of bitwise operators in JavaScript is very rare and often &
or |
is simply a mistyped &&
or ||
, which will lead to unexpected behavior.
var x = y | z;
Rule Details
This rule is aimed at catching typos that end up as bitwise operators, but are meant to be the much more common && , ‘ |
’, < , > operators. As such, it will warn whenever it encounters a bitwise operator: |
The following patterns are considered warnings:
var x = y | z;
var x = y & z;
var x = y ^ z;
var x = ~ z;
var x = y << z;
var x = y >> z;
var x = y >>> z;
var x |= y;
var x &= y;
var x ^= y;
var x <<= y;
var x >>= y;
var x >>>= y;
The following patterns are not considered warnings:
var x = y || z;
var x = y && z;
var x = y > z;
var x = y < z;
var x += y;
Version
This rule was introduced in ESLint 0.0.2.