在 JavaScript 中,需要针对一些操作数(运算元)做大小之类的比较,以便决定之后的代码进程(条件语句将在下一章学习到)。这类运算符便被称作比较运算符,比较运算符返回的总是一个布尔值。

比较运算符

比较运算符有以下:

运算符 描述
== 等于比较
!= 不等于比较
> 大于比较
< 小于比较
>= 大于等于比较
<= 小于等于比较
=== 全等比较
!== 不全等比较

比较运算符总是返回一个 Boolean 值:

  • true:表达式正确。
  • false:表达式错误。
$$edit$$
$$jsdemo$$
alert(5 > 2) // true,正确
alert(5 < 2) // false,错误
alert(5 == 5) // true,正确

不同类型的比较

当对不同的类型比较时, JavaScript 会先将其转换成数字再进行比较。

$$edit$$
$$jsdemo$$
alert( '2' > 1 ) // true,字符串 '2' 会被转化为数字 2
alert( '01' == 1 ) // true,字符串 '01' 会被转化为数字 1

对于布尔值, true 会被转成1false 则是 0

$$edit$$
$$jsdemo$$
alert(true == 1) // true
alert(false == 0) // true

严格比较

=== (全等比较)与 !== (不全等比较)则不会事先进行类型上的转换,用来判断两边的操作数是否包括类型完全相等。

=== 全等比较,类型和值同时相等的情况下才为 true ,反之 false

alert(5 == "5") // true
alert(5 === "5") // false,类型不等

!== 不全等比较,类型或值任意一者不等就为 true ,反之 false

alert(1 != true) // false
alert(1 !== true) // true,类型不等