Javascript Type Coercion:

// Type Coercion Examples in JavaScript
 
// == comparisons
[] == []               // false
[] == ![]              // true
true == []             // false
true == ![]            // false
false == []            // true
false == ![]           // true
 
// == with numbers
[] == 0                // true
"" == 0                // true
"0" == 0               // true
"0" == false           // true
NaN == NaN             // false
Number.MIN_VALUE > 0   // true
 
// Logical coercion
!null                  // true
null == false          // false
0 == false             // true
"" == false            // true
[] < 3                 // true
3 > 2 > 1              // false
 
// == comparisons with null/undefined
[] == ![]              // true
[] == 0                // true
[null] == 0            // true
[undefined] == 0       // true
undefined == 0         // false