Direct comparison with -0 detected
このページは日本語には対応しておりません。随時翻訳に取り組んでいます。
翻訳に関してご質問やご意見ございましたら、
お気軽にご連絡ください。
ID: javascript-best-practices/no-compare-neg-zero
Language: JavaScript
Severity: Error
Category: Best Practices
Description
In JavaScript, -0
and +0
are considered to be equal ((-0 === +0) // true
). However, they behave differently in some operations. For instance, 1/-0
results in -Infinity
, while 1/+0
results in +Infinity
. Directly comparing with -0
can produce results that are hard to understand, and may lead to bugs.
Non-Compliant Code Examples
x === -0;
-0 === x;
x == -0;
-0 == x;
x > -0;
-0 > x;
x >= -0;
-0 >= x;
x < -0;
-0 < x;
x <= -0;
-0 <= x;
Compliant Code Examples
x === 0
0 === x
x == 0
0 == x
x === '0'
'0' === x
x == '0'
'0' == x
x === '-0'
'-0' === x
x == '-0'
'-0' == x
x === -1
-1 === x
x < 0
0 < x
x <= 0
0 <= x
x > 0
0 > x
x >= 0
0 >= x
x != 0
0 != x
x !== 0
0 !== x
Object.is(x, -0)