What is the difference between == and ===

The difference between == and === in JavaScript is primarily about type comparison.

The == operator checks for equality between two values, but it performs type coercion if the values are of different types. This means that JavaScript will attempt to convert one or both of the values to the same type before making the comparison.

On the other hand, the === operator checks for strict equality. This means that it not only checks the values for equality but also considers their types. If the types are different, the comparison will return false without any type coercion.

Here’s a simple example to illustrate the difference:

// Using == var a = '5'; var b = 5; console.log(a == b); // true, due to type coercion // Using === console.log(a === b); // false, because types are different (string vs number)

JavaScript comparison operators type coercion strict equality