| | == | 相等 | | != | 不相等 | | > | 大于 | | < | 小于 | | >= | 大于等于 | | <= | 小于等于 | | === | 严格相等(推荐) | | !== | 严格不相等(推荐) |
严格不相等
JavaScript 是弱类型语言,开发者在声明变量的时候不需要声明变量类型,而是由 JavaScript 引擎在编译时隐式完成。这会带来方便,但也带来一些坑。比如 ==
和 !=
操作符在比较时,会先对变量进行强制类型转换,然后再做比较:例如 "5" == 5
会返回 true
。但是强制类型转换的规则很复杂,比如 "" == "0"
返回 false
,但是 0 == ""
返回 true
。
因此实际使用时,推荐用 ===
和 !==
进行相等和不相等的判断:
- 严格相等
===
:只有变量的值和类型均相等时,才算严格相等。 - 严格不相等
!==
:不同类型的变量是不相等的,例如"5"
和5
不相等。
3. 逻辑运算符
逻辑运算符常用于布尔值之间,主要有以下 3
个 (a
和 b
为布尔值):
- 或
||
:a || b
- 与
&&
:a && b
- 非
!
:!a
3.1 或 ||
或运算是指当参与运算的任何一个操作数为 true
时,返回的结果就为 true
,否则就返回 false
。即只要有一个操作数是对的,整个表达式就是对的。
3.2 与 &&
与运算是指当参与运算的任何一个操作数为false
时,返回的结果就为false
,否则就返回true
。即所有操作数均是对的,整个表达式才是对的。
3.3 非 !
非运算符是对操作数取反,将 true
变为 false
,false
变为 true
。
习题
给出下面 6
个变量的值。你可以在链接上找到这段代码。
总结
这一讲,我们介绍了 JavaScript 中最常用的运算符:算数运算符,比较运算符,逻辑运算符。大家可能对递增/递减(++
/--
)和严格等于(===
)比较陌生,不用担心,我们将在之后的教程中反复练习。