JavaScript offers many ways to compare data, including both strict and loose comparisons.
Strict comparisons require the type of the data as well as the values be identical. For this, a number can only match a number and they must have the same value. Likewise, a string only matches another string with the same value, etc.
The more pliant (loose) comparison checks for a match to the data value, and does not care about the type. Technically, The two types are converted to match before the comparison is made, so it does address a difference in type, but this is not considered during the comparison
The following shows the operators used to make comparisons.
- === Equal in type and value.
- !== Not equal in type and/or value.
- >= Greater than or equal to.
- <= Less than or equal to.
- > Greater than.
- < Less than.
3 === '3' // RESULT: false because === compares type and one is a number while the other is a string
3 !== '3' // RESULT: true because !== compares if these are NOT the same type and value
3 != '3' // RESULT: false because != compares if these are NOT the same value, but they are. This does not check the type
3 >= 3 // RESULT: true because this test if the first value is either greater-than or equal-to
7 <= 3 // RESULT: false, because 7 is neither less than or equal to 3
7 > 3 // RESULT: true because 7 is greater than 3
7 < 3 // RESULT: false because 7 is greater than 3














