JavaScript-1.5-JavaScript 的运算符
JavaScript 的运算符
一:算数运算符
七种算数运算符
1.+:加
2.-:减
3.*:乘
4./:除
5.%:取余
6.++:自增
7.–:自减
1、运算符 +
- 当 + 两边均为数字时,进行加法运算
- 当 + 两边有任意一边为字符串时,进行字符串连接,连接之后的结果为字符串
2、自增(自减)运算符
- ++:自增运算符,将变量在原有基础上加1
- –:自减运算符,将变量在原有基础上减1
3、n++ 与 ++n 的异同
(1)相同点
无论 n++ 还是 ++n,在执行完代码以后,均会把 n 的值加1
(2)不同点
n++:先使用 n 值进行计算,然后把 n 加 1
++n:先把 n 的值加1,然后用 n+1 以后的值去运算
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var a = 3;
var b, c;
b = a++ + 2;
c = ++a + 2;
console.log(b);
console.log(c);
</script>
</body>
</html>
效果图
二:赋值运算符
1、基本赋值运算符
- 基本的赋值运算符是"="
- 它的优先级别低于其他的运算符,所以对该运算符往往最后一个读取
2、复合赋值运算符
- +=
- -=
- *=
- /=
- %=
a += 5; // 等价于 a = a + 5;
三:关系运算与逻辑运算
1、关系运算符
七种关系运算符
1.== :等于
2.===:严格等于
3.!=:不等于
4.>:大于
5.<:小于
6.>=:大于等于
7.<=:小于等于
=== 与 == 的区别
===:严格等于,左右两边的数据类型不同时,返回 false ;类型相同时,再进行下一步判断
==:等于,左右两边的数据类型相同时,再进行下一步值的判断;类型不同时,尝试将等式两边转为数值类型,再进行判断
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var a = "2019";
var b = 2019;
console.log(a==b);
console.log(a===b);
</script>
</body>
</html>
效果图
2、逻辑运算符
- &&:与
- ||:或
- !:非
逻辑运算符规律
1.逻辑与:当 && 左右两侧的值均为 true 时,表达式结果为 true ,否则表达式为 false
2.逻辑或:当 || 左右两侧的值均为 false 时,表达式结果为 false ,否则表达式为 true
3.值为 true 的 “!” 为 false,值为 false 的 “!” 为 true
四:条件运算(多目运算)
1、条件运算符的形成
表达式1?表达式2:表达式3
2、关键符号 ?和 :
- 当 ?前面部分运算结果为 true 时,执行 “:” 前面代码
- 当 ?前面部分运算结果为 false 时,执行 “:” 后面代码
3、多层嵌套
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var num = 5;
// 先执行 num>5 判断
var result = num>5?"This is false.":(num==5?"This is true.":"This is false.");
console.log(result);
</script>
</body>
</html>
效果图
五:逗号运算符
- 用逗号运算符连接起来的表达式,称为逗号表达式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var a = 2;
var b = 0;
var c;
// 整个逗号表达式的值是最后一个表达式的值
c = (++a, a*=2, b=a*5);
console.log(c);
</script>
</body>
</html>
效果图
六:运算符的优先级
- JavaScript 中总是按从左往右的顺序来计算表达式
- 运算符的优先级决定了表达式中运算执行的先后顺序,先执行优先级高的运算符
运算符 | 描述 | 结合性 |
---|---|---|
() | 圆括号 | 自左向右 |
!,++,– | 逻辑非,递增,递减 | 自右向左 |
*,/,% | 乘法,除法,取余 | 自左向右 |
+,- | 加法,减法 | 自左向右 |
<, <=, >, >= | 小于,小于或等于,大于,大于或等于 | 自左向右 |
==,!= | 等于,不等于 | 自左向右 |
=,+=,-=,*=,/=,%= | 赋值运算符,符合赋值运算符 | 自右向左 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var a = 10+8-16*6*(80/20)+65-72%2;
console.log(a);
</script>
</body>
</html>
效果图