19
Do you find difficulty choosing between =, == & === ?
It assigns the value to the variable.
const firstName = 'Prashant';
const favNumber = 13;
This operator compares two values & return true if they are equivalent or false if they are not.
function equality(value) {
if(value == 13) {
return 'Equal';
}
return 'Not Equal';
}
In addition, it also compares two different data types (numbers & strings).
It is called as Type Coercion.
1 == '1' /* This will return true with the Loose Equality Operator. */
Unlike the Equality Operator, it does not compare two different data types.
Otherwise, it works similarly to Loose Equality Operator.
1 === '1' /* This will return false in case of the Strict Equality Operator. */
var favBook = 'Sapiens'; /* Assigns the value to the variable */
const 13 == '13'; /* It will perform a type conversion and it will return true. */
const 13 ==='13' /* It will not perform type conversion. Hence, it will return false. */
Ideally, you should always use ===
and !==
, and never use ==
, and !=
.
Or to make it easy to use what can you do is configure your linter to always use ===
and !==
in code editor.
The loose equality has too many pitfalls that are covered by the strict one.
Why not connect on Twitter?
19