运算符
运算符类别
赋值运算符
=
用来给变量赋值,还有以下简写
+
=
-
=
*
=
/
=
%
=
相当于:
\displaylinesa+=b⇔a=a+ba−=b⇔a=a−ba∗=b⇔a=a∗ba/=b⇔a=a/ba%=b⇔a=a%b
算数运算符
+
加法
-
减法
*
乘法
/
除法
%
取余(模运算)
比较运算符
>
大于
<
小于
>
=
大于或等于
<
=
小于或等于
=
=
等于(值相等)
=
=
=
全等于(值和数据类型一致)
!
=
不等于
判断值相等,坚决不能用一个 =
宽松写法=
=
严谨写法=
=
=
(推荐)
let a = null;
let b = undefined;
a == b;
a === b;
比较运算符总结
比较运算符得到的结果是一个布尔值 (true 或者 false)
>= 大于或等于 只要有一个结果正确最后的结果就是正确的
== 等于,只判断值是否相等
=== 全等于,值和数据类型必须都一样
一元运算符
注意
一元运算每次只能固定的加1或者减1
在循环语句中使用一元运算符
一元运算符连写,中间不能有任何的空格
变量++⇔先运算再自增1++变量⇔先自增1再运算1变量−−⇔先运算再自减1−−变量⇔先自减1再运算
自增(减)运算符
相关信息
以字母i
为例,自减运算符与自增运算符类似,这里不再赘述
++i
先运算,再赋值
i++
先赋值,再运算
注意
注意运算过程中变量的值
let a = 1;
let b = a++;
console.log(a);
console.log(b);
提示
单独看i++值为1,++i值为2,但下面运算结果一定不是4、5这样的答案
运算过程中i
的值会变化
let i = 1;
console.log(i++ + ++i + i);
逻辑运算符
Javascript 假值
undefined、null、NaN(非数字)、0、false、' '
?
?
是ECMA2020新增的空值合并运算符
或运算
|
|
结果都是布尔值,一真即真
碰到真的,触发短路,后面不执行
console.log(0 || 2);//值为2
且运算
&
&
结果都是布尔值,一假即假
警告
不要使用数学写法,如18 <= age <24
let year = prompt('请输入年份:');
console.log(year >= 2020 && year <=2035);
碰到假的,触发短路,后面不执行
console.log(null && 3);
console.log(3 && false);
console.log(2 && 6);
||与&&同时出现
先计算&&最后计算||
console.log(0 && 1 || 2); //值为2
空值合并运算符
?
?
类似或运算,处理第一个为null或undefined为真时,才返回第二个值
作用是判断0和空值
取反
!
let a = 2;
a = !a;
Boolean
运算符优先级
- 算数运算符(最高)
- 比较运算符
- 赋值运算符
- 一元运算符
- 逻辑运算符
- 赋值运算符(最低)
提示
算数运算符中的(
)
级别最高,再乘除加减
一元运算符先+
+
逻辑运算符先执行|
|