Comparison operators
Last updated
Last updated
A comparison operator compares its operands and returns a logical value based on whether the comparison is true. The operands can be numerical, string, logical, or object values. Strings are compared based on standard lexicographical ordering, using Unicode values. In most cases, if the two operands are not of the same type, JavaScript attempts to convert them to an appropriate type for the comparison. This behavior generally results in comparing the operands numerically. The sole exceptions to type conversion within comparisons involve the ===
and !==
operators, which perform strict equality and inequality comparisons. These operators do not attempt to convert the operands to compatible types before checking equality. The following table describes the comparison operators in terms of this sample code:
JSCopy to Clipboard
(==
)
Returns true
if the operands are equal.
3 == var1
"3" == var1
3 == '3'
(!=
)
Returns true
if the operands are not equal.
var1 != 4
var2 != "3"
(===
)
Returns true
if the operands are equal and of the same type. See also and .
3 === var1
(!==
)
Returns true
if the operands are of the same type but not equal, or are of different type.
var1 !== "3"
3 !== '3'
(>
)
Returns true
if the left operand is greater than the right operand.
var2 > var1
"12" > 2
(>=
)
Returns true
if the left operand is greater than or equal to the right operand.
var2 >= var1
var1 >= 3
(<
)
Returns true
if the left operand is less than the right operand.
var1 < var2
"2" < 12
(<=
)
Returns true
if the left operand is less than or equal to the right operand.
var1 <= var2
var2 <= 5
Note: =>
is not a comparison operator but rather is the notation for Arrow functions.