3
0 Comments

JavaScript Loose Equality vs Strict Equality check

Hello Everyone!

In this post, we will explore the difference between JS loose equality (==) and strict equality (===) check.

Here is the simplest definition

  • Loose equality (==) checks for value only.
  • Strict equality (===) checks for value as well as DataType.

But wait, there is something more to it. Let's understand the workings of both of them one by one.

Strict Equality (===)

Strict equality first checks for DataType, If the datatype is the same then it checks for value, else it returns false.

Ex:

console.log("55" === 55);
// false - Because datatype is different even though value is same.

strict-equality

Loose Equality (==)

Loose equality works similarly to strict equality. The only difference is that in loose equality if datatype is different, it performs an Implicit type conversion and then compares the value.

Ex:

console.log("55" == 55);
// true - Because implicit conversion will change string "55" to number 55 then compare value.

loose-equality

If you enjoyed or found this post helpful, please consider joining my weekly newsletter below.

Thank You for reading.


I am starting a NewsLetter where I will share epic content on building your skillset. So, if this sounds interesting to you, subscribe here: https://www.getrevue.co/profile/8020lessons

posted to Icon for group Developers
Developers
on November 4, 2021
Trending on Indie Hackers
Why Indie Founders Fail: The Uncomfortable Truths Beyond "Build in Public" User Avatar 115 comments I built a tool that turns CSV exports into shareable dashboards User Avatar 94 comments $0 to $10K MRR in 12 Months: 3 Things That Actually Moved the Needle for My Design Agency User Avatar 73 comments The “Open → Do → Close” rule changed how I build tools User Avatar 63 comments I got tired of "opaque" flight pricing →built anonymous group demand →1,000+ users User Avatar 43 comments A tweet about my AI dev tool hit 250K views. I didn't even have a product yet. User Avatar 42 comments