==
and !=
JS-0050 3
4 let p,i;
5 for (p = 2; p * p < MAX_SIZE;p++) {
6 if (IsPrime[p] == true) { 7 for(i = p * p; i < MAX_SIZE; i += p)
8 IsPrime[i] = false;
9 }
1function gcd(a, b) {
2 while (b != 0) { 3 c = a % b;
4 a = b;
5 b = c;
1function smallestFactor(x) {
2 for (i = 2; i <= Math.floor(x**.5); i++) {
3 if (x % i == 0) { 4 return i;
5 };
6 };
It is considered good practice to use the type-safe equality operators ===
and !==
instead of their regular counterparts ==
and !=
.
The strict equality operators (===
and !==
) use the strict equality comparison algorithm to compare two operands.
false
.true
only if they refer to the same object.null
or both operands are undefined
, return true
.NaN
, return false
.+0
and -0
are considered to be the same value.true
or both false
.The most notable difference between this operator and the equality (==
) operator is that if the operands are of different types, the ==
operator attempts to convert them to the same type before comparing.
a == b
foo == true
bananas != 1
value == undefined
typeof foo == 'undefined'
'hello' != 'world'
0 == 0
true == true
foo == null
a === b
foo === true
bananas !== 1
value === undefined
typeof foo === 'undefined'
'hello' !== 'world'
0 === 0
true === true
foo === null