运算符(operator)也被称为操作符,是用于实现赋值、比较和执行算数运算等功能的符号。
JavaScript 中常用的运算符有:
| 运算符 | 描述 | 实例 |
|---|---|---|
| + | 加 | 10 + 20 =30 |
| - | 减 | 10 - 20 =-10 |
| * | 乘 | 10 * 20 =200 |
| / | 除 | 10 / 20 =0.5 |
| % | 取余数(取模) | 返回出发的余数 9 % 2 =1 |
注意:浮点数的精度问题
- 浮点数值的最高精度是17位小数,但在进行算数计算时其精确度远远不如整数。
//所以不要直接判断两个浮点数是否相等var result=0.1 + 0.2console.log(result) //0.30000000000000004console.log(0.07*100) //7.000000000000001
2.递增和递减运算
递增(++)
递减(- -)
放在变量前面时,我们称为前置递增(递减)运算符
放在变量后面时,我们称为后置递增(递减)运算符
注意:递增和递减运算符必须和变量配合使用。
2.1前置递增运算符
var num = 10;//先自加,后返回值alert (++num + 10); // 21
2.2后置递增运算符
var num = 10;
//先返回原值,后自加
alert(10 + num++); // 20
3.比较(关系)运算符
两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值(true / false)作为比较运算的结果。
console.log(1 < 2) true
console.log(1 > 2) false
console.log(1 == 2) false
console.log(1 >= 1) true
console.log(1 != 2) true
console.log(1==='1') false
console.log(18 == '18'); //true
console.log(18 === '18'); //false
console.log(18 === 18); //true
| 符号 | 作用 | 用法 |
|---|---|---|
| = | 赋值 | 把右边给左边 |
| == | 判断 | 判断两边值是否相等(注意此时有隐士转换) |
| === | 全等 | 判断两边的值和数据类型是否完全相同 |
4.逻辑运算符
逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值
| 逻辑运算符 | 说明 | 案例 |
|---|---|---|
| && | ‘’逻辑与”,简称”与” and | true && false |
| || | “逻辑或”,简称”或” or | true || false |
| ! | “逻辑非”,简称”非” not | !true |
逻辑与:两边都是 true才返回 true,否则返回 false
逻辑或:两边都为 false 才返回 false,否则都为true
逻辑非:逻辑非(!)也叫作取反符,用来取一个布尔值相反的值,如 true 的相反值是 false
4.1逻辑与
两边都是 true才返回 true,否则返回 false
console.log(123 && 456) //456
console.log(0 && 456) //0
console.log(123 && 456 && 789) //789
4.2逻辑或
两边都为 false 才返回 false,否则都为true
console.log(123 || 456); //123
console.log(0 || 456); //456
console.log(123 || 456 || 789); //123
4.3逻辑非
var isOk = !true;
console.log(isOk); // false
//逻辑非(!)也叫作取反符,用来取一个布尔值相反的值,如 true 的相反值是 false
5.赋值运算符
概念:用来把数据赋值给变量的运算符。
| 赋值运算符 | 说明 | 案例 |
|---|---|---|
| = | 直接赋值 | var usrName = ‘我是值’ |
| += ,-= | 加,减一个数后再赋值 | var age = 10; age+=5;//15 |
| *=,/=,%= | 成,除,取模后再赋值 | var age = 2; age*=5; //10 |
var age = 10;
age += 5; // 相当于 age = age + 5;
age -= 5; // 相当于 age = age - 5;
age *= 10; // 相当于 age = age * 10;
