1.数字运算符
2.关系运算符(比较运算符)
> 大于
>= 大于等于
< 小于
<= 小于等于
==
!=
=== 恒等
!== 不恒等
注意:关系运算的结果为布尔类型
1.数字与数字比较
var r = 10 > 5; // r = true
2.数字与字符串进行比较
首先会自动将字符串转换为数字再进行比较,如果转换成功,按照数字之间的比较进行运算,如果转换失败,会变成数字与NaN之间的比较,结果永远都为False
示例:
"10" > 5; //true
"10a" > 5; //false
"你好" > 5; //false
3.字符串之间的比较,进行每位字符Unicode码的比较,当前位如果相同,就后移至下一位再进行比较,当前为如果不同,直接出结果
4.== === / != !==
相等:==用于判断两个值是否相等,结果就为true
恒等:=== 用于判断两个变量的数据类型和值是否完全相等,不会进行数据类型转换,只有当操作数的数据类型保持一致,值相等,才为true
不等:!=在两端值不相等的情况下,返回为true
不恒等:!==两个操作数中,数据类型与值只要有一个不相等,就返回true,否则是false
3.逻辑运算符
进行多项比较,并将结果组合为单一的布尔值
&& : 逻辑与
(等同于 python and,)左右为表达式,只有两个表达式的结果都为真,逻辑与的结果才为真
|| :逻辑或 (等同于ptyhon or),只要有一个条件为真,结果就为真
! :逻辑非 (等同于python not),对现有条件的结果进行取反操作(直接取反,非真即假,非假即真)
4.位运算符
程序中所有的数据在计算机中都是以二进制存储的,位运算,就是对二进制位进行操作
1.按位与 : &
将整数转换为二进制形式,每一位都进行与操作
3 & 5 ---> 1
011 & 101
0 1 1
& 1 0 1
----------
0 0 1
注意:任何数字与1进行位与操作,结果为1时,表明操作数为奇数,结果为0,操作数为偶数,所以可以用来判断数字奇偶
2.按位或: |
3 | 5 --->7
0 1 1
| 1 0 1
----------
1 1 1
3.按位异或: ^
两个数字的二进制位进行比较,相同则为0,不同则为1
3 ^ 5 --->6
0 1 1
^ 1 0 1
---------
1 1 0
注意:^操作可以在不借助第三方变量的情况下,交换两个变量的值
5.三目运算符
三目运算符,有3个操作数
类似:
单目运算符(一元运算符) ++ -- ! typeof,只有一个操作数的运算符;
双目运算符(二元运算符) + + * / % && || >...有两个操作数的运算符
语法:
条件表达式 ?表达式1:表达式2;
(先判断条件表达式的结果,为真,执行表达式1;为假,执行表达式2)
示例:
var a = 150;
a > 120? "偏胖,该减肥了" :"正好"