4 运算符
4.1 算数运算符
- 算术运算符概述
- 概念:算术运算使用的符号,用于执行两个变量或值的算术运算
| 运算符 |
描述 |
实例 |
+ |
加 |
10+20= 30 |
- |
减 |
10 - 20= -10 |
* |
乘 |
10 * 20 = 200 |
/ |
除 |
10 / 20 = 0.5 |
% |
取余数(取模) |
返回除法的余数9 % 2= 1 |
- 表达式和返回值
- 表达式:是由数字、运算符、变量等以能求得数值的有意义排列方法所得的组合
- 表达式最终都会有一个结果,返回给我们,我们成为返回值
4.2 递增和递减运算符
- 如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减( -- )运算符来完成
- 在 JavaScript 中,递增(++)和递减( -- )既可以放在变量前面,也可以放在变量后面。放在变量前面时,我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符
- 注意:递增和递减运算符必须和变量配合使用
4.2.1 前置递增运算符
4.2.2 后置递增运算符
4.3 比较运算符
- 概念:比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true / false)作为比较运算的结果
| 运算符名称 |
说明 |
案例 |
结果 |
| < |
小于号 |
1<2 |
true |
| > |
大于号 |
1>2 |
false |
| >= |
大于等于号(大于或者等于) |
2>=2 |
true |
| <= |
小于等于号(小于或者等于) |
3<=2 |
false |
| == |
判等号(会转型) |
37==37 |
true |
| != |
不等号 |
37!=37 |
false |
| === |
全等要求值和数据类型都一致 |
37==='37' |
false |
| 符号 |
作用 |
用法 |
| = |
赋值 |
把右边给左边 |
| == |
判断 |
判断两边值是否相等(注意此时有隐式转换) |
| === |
全等 |
判断两边的值和数据类型是否完全相同 |
console.log(18 == '18');
console.log(18 === '18');
4.4 逻辑运算符
4.4.1 逻辑运算符概述
- 概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断
| 逻辑运算符 |
说明 |
案例 |
| && |
"逻辑与",简称"与"and |
true && false |
| ∣∣ |
"逻辑或",简称"或"or |
true ∣∣ false |
| ! |
"逻辑非",简称"非”not |
!true |
- 逻辑与&&
- 两边都是 true才返回 true,否则返回 false
- 逻辑或 ||
- 两边都为 false 才返回 false,否则都为true
- 逻辑非 !
- 逻辑非(!)也叫作取反符,用来取一个布尔值相反的值,如 true 的相反值是 false
4.4.2 短路运算(逻辑中断)
- 短路运算的原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值
4.5 赋值运算符
| 赋值运算符 |
说明 |
案例 |
| = |
直接赋值 |
var usrName= '我是值'; |
| +=、-= |
加、减一个数后在赋值 |
var age = 10; age+=5; //15 |
| k=、/=、%= |
乘、除、取模后在赋值 |
var age = 2; age*=5; //10 |
var age = 10;
age += 5;
age -= 5;
age *= 10;
4.6 运算符优先级
| 优先级 |
运算符 |
顺序 |
| 1 |
小括号 |
() |
| 2 |
—元运算符 |
++ -- ! |
| 3 |
算数运算符 |
先 * / % 后 + - |
| 4 |
关系运算符 |
> >= < <= |
| 5 |
相等运算符 |
== !==== !== |
| 6 |
逻辑运算符 |
先 && 后 ∣∣ |
| 7 |
赋值运算符 |
= |
| 8 |
逗号运算符 |
, |
- 一元运算符里面的逻辑非优先级很高
- 逻辑与比逻辑或优先级高
4.7 三元运算符
- 语法结构
表达式1 ? 表达式2 : 表达式3;
- 执行思路
- 如果表达式1为 true ,则返回表达式2的值;如果表达式1为 false,则返回表达式3的值