【前端自学之路】JS之运算符

Javascript 运算符

算数运算符

算数运算符就是我们数学常见的 + - * /,还包括 %

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var count = 100;
var num = 10;

// 加法运算 110
var a = count + num;

// 减法运算 90
var b = count - num;

// 乘法运算 1000
var c = count * num;

// 除法运算 10
var d = count / num;

// 取模运算 0
var e = count % num

前面4个好理解,新增的 %,就是余数,如 100 % 3 余数为 1

逻辑运算符

  • && 逻辑与,只有左右操作数都为真值(true)时,表达式才为真
  • || 逻辑或,左右操作数只要有一个为真值(true)时,表达式就为真
  • ! 取反,取相反值,真值取反为假,假取反为真
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var left = true;
var right = false;

// && 只要有一个为假,表达式就为假 a 为 false
var a = left && right;

// && 左右都是真 b 为 true
var b = left && left;

// && 左右都是假 c 为 false
var c = right && right;

// || 只要有一个为真,表达式就为真 b 为 true
var d = left || right;

// || 左右都是真,e 为 true
var e = left || left;

// || 左右都是false,e 为 false
var f = right || right;

// 取反,left为真,取反后,h 为 false
var h = !left;

// 取反,right为假,取反后,i 为 true
var i = !right;

关系运算符

这个也类似于数学里的大小判断关系

1
2
3
4
5
6
7
8
>  大于
>= 大于或等于
< 小于
<= 小于或等于
== 相等
=== 相等
!= 不等
!== 不等

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var left = 10;
var right = 9;

// 10 > 9 所以 a 为 true
var a = (left > right);

// 10 >= 10 所以 a 为 true
var b = (left >= 10);

// 10 < 9 所以 c 为 false
var c = (left < right);

// == 是判断是否相等 10 == 9 ? d 为 false
var d = (left == right);

// != 是判断是否不等 10 != 9 那是当然 e 为 true
var e = (left != right);

== 和 === 都是判断是否相等,区别在于是否会做类型转换,同理 != 和 !==

1
2
3
4
5
6
7
8
var left = 1;
var right = '1';

// a 为 true, == 会做类型转换
var a = (left == right);

// b 为 false
var b = (left === right);

条件运算符

条件表达式格式: 判断条件 ? 表达式1 : 表达式2

执行逻辑是:
先执行判断条件,如果为真,则表达式取表达式1的值,否则取表达式2的值

1
2
3
4
5
6
7
var a = 10;

// b 为 2
var b = (a > 10 ? 1 : 2);

// c 为 1
var c = (a >= 10 ? 1 : 2);

括号运算符

括号一般只是表示分组或者优先计算

1
2
// () 优先计算,a 为 16
var a = 2 * (5 + 3);

逗号运算符

这个运算符可能比较不被留意

逗号运算符是取最后一个逗号表达式的值

1
2
// a 为 5
var a = (1, 2, 3, 4, 5);

自增、自减

分为 前置自增、后置自增、前置自减、后置自减

自增就相当于+1 , 自减相当于 -1

1
2
3
4
5
6
7
8
9
10
11
var a = 6;

// a 为 7 , b 为 6
// 先把 a 当前值 6 作为表达式的值,因此 b 为 6
// 然后 a 自增 +1,变成 7
var b = (a ++)

// a 为 7 , b 为 7
// 先把 a 自增 +1,变成 7
// 再把 a 作为表达式的值,因此 b 为 7
var c = (++ a)
坚持原创技术分享,谢谢鼓励我继续创作!