运算符
算术运算符
加(+)、减(-)、乘(*)、除(/)、取余(%);自身加加(++)、自身减减(–)
值得注意的是加(+)、减(-),可以放到单个数据前面,表示正负
var a = -10 // 数字的负10
var a = +10 // 数字的正10
字符串拼接
当加(+)号的两端有一个是字符串时,不进行算术运算,而是进行字符串拼接
var a = '123'
var b = '456'
赋值运算符
=
、+=
、-=
、*=
、/=
、%=
比较运算符
返回boolean值
>
、<
、>=
、<=
、==
、!=
、===
、!==
绝对等于===
和绝对不等于!==
不发生隐式类型转换
逻辑运算符
- 逻辑与(&&)
- 逻辑或(||)
- 逻辑非(!)
默认为false的数据
1. false
2. null
3. undefined
4. 0
5. NaN
6. '' // 空字符串
具有短路规则;返回最后一个判定的数据
1 && 2 // 2 // 第一个判定为true则向后看,若这是最后一个数据则返回
0 && 2 // 0 // 第一个判定为false则不向后看,直接返回当前数据值
1 || 2 // 1 // 第一个判定为true则直接返回当前值,不向后看
0 || 2 // 2 // 第一个判定为false则向后看,若这是最后一个判定的数据则返回
缩减代码
1.逻辑与
// 如果exp为true则输出 exp
if(exp) {
console.log(exp);
}
// 上面方法可写成
exp && console.log(exp); // 如果exp判定为false则console.log则不会执行
2.逻辑或
// 如果exp有值,则把它赋值给n,如果没有则赋值为1
if(exp) {
n = exp;
}else{
n = 1;
}
// 上面写法可写成
n == exp || 1;
三目运算符
语法
如果exp判定为true则返回a,否则返回b
exp ? a : b;