Assigning Operator (=)
It assigns the value to the variable.
const firstName = 'Prashant';
const favNumber = 13;
Loose Equality Operator (==)
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. */
Strict 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. */
More Examples
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. */
  
  
  A tip by 
    
      ![[deleted user] image](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F99mvlsfu5tfj9m7ku25d.png) 
    
  
    [Deleted User]
    
      
    
  
![[deleted user] image](https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F99mvlsfu5tfj9m7ku25d.png) 
    [Deleted User]
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.
 
 
              
 
    
Top comments (1)
Thanks for sharing this great tip Luke. Adding this into article!