strict equality operator code example

Example 1: javascript test strict equality

// If you try to test if the number 5 
//is equal to the string “5” the result is true. 
var a = 5; 
var b = "5"; 
if ( a == b) --> true
//That’s because JavaScript figures out the value 
//of this string is five, and five is the same as five, 
//so therefore a equals b.

//But if you ever need to test to see 
//if two things are identical, three symbols is the way to go. 
var a = 5; 
var b = "5"; 
if ( a === b) --> false

Example 2: strict equality

//Strict equality operator

console.log(1 === 1);
// expected output: true

console.log('hello' === 'hello');
// expected output: true

console.log('1' ===  1);
// expected output: false

console.log(0 === false);
// expected output: false


//Comparing operands of the same type

console.log("hello" === "hello");   // true
console.log("hello" === "hola");    // false

console.log(3 === 3);               // true
console.log(3 === 4);               // false

console.log(true === true);         // true
console.log(true === false);        // false

console.log(null === null);         // true

//Comparing operands of different types

console.log("3" === 3);           // false

console.log(true === 1);          // false

console.log(null === undefined);  // false


//Comparing objects

const object1 = {
  name: "hello"
}

const object2 = {
  name: "hello"
}

console.log(object1 === object2);  // false
console.log(object1 === object1);  // true

//Source: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Strict_equality

Example 3: js ===

5 =='5' // true: ignores type
5 === '5' // false: includes type

Example 4: strict equality operator

/**
* Strict equality operator (===) checks if its two operands are identical.
*
* The 'if' statement below will yield to false. 
* 
* This is because the strict equality operator checks if both the data type AND the value contained are
* the same.
*/
let x = 8
let y = "8"
if (x === y)