1.运算符
1.1 赋值运算符
目标: 能够使用赋值运算符简化代码
赋值运算符:对变量进行赋值的运算符
·已经学过的赋值运算符:= 将等号右边的值赋予给左边, 要求左边必须是一个容器
·其他赋值运算符:
·+=
·-=
·*=
·/=
·%=
·使用这些运算符可以在对变量赋值时进行快速操作
原先写法
let num=1
num=num+1
console.log(num);
简便写法
let num=1
num+=1
console.log(num);
总结
- = 赋值运算符执行过程?
Ø 将等号右边的值赋予给左边, 要求左边必须是一个容器 - += 出现是为了简化代码, 比如让 let num = 10 ,num 加5 怎么写呢
Ø num +=
1.2 一元运算符
众多的 JavaScript 的运算符可以根据所需表达式的个数,分为一元运算符、二元运算符、三元运算符
·二元运算符:
let num=10+20
·一元运算符:
Ø 例: 正负号
我们以前让一个变量每次+1 ,以前我们做的
let num=10
num=num+1
num+=1
我们可以有更简便的写法了
·自增:
·符号:++
·作用:让变量的值 +1
·自减:
·符号:–
·作用:让变量的值 -1
·使用场景:经常用于计数来使用。 比如进行10次操作,用它来计算进行了多少次了
区别
let i=1
console.log(i++ +1);
// 2
console.log(++i +1);
// 3
自增运算符的用法:
- 前置自增和后置自增独立使用时二者并没有差别!
- 一般开发中我们都是独立使用
- 后面 i++ 后置自增会使用相对较多,并且都是单独使用
总结
1.只需要一个表达式就可以运算的运算符叫一元运算符
2. 自增运算符也是为了简化写法,每次自加1,使用场景是什么?
Ø 经常用于计数来使用。用来计算多少次
3. 实际开发中,我们一般都是单独使用的,后置++ 更多
1.3 比较运算符
a.比较运算符的介绍
Ø 使用场景:比较两个数据大小、是否相等
b.比较运算符:
Ø > : 左边是否大于右边
Ø <: 左边是否小于右边
Ø >=: 左边是否大于或等于右边
Ø <=: 左边是否小于或等于右边
Ø = = : 左右两边值是否相等
Ø = = =: 左右两边是否类型和值都相等
Ø ! = =: 左右两边是否不全等
Ø 比较结果为boolean类型,即只会得到 true 或 false
·对比:
Ø = 单等是赋值
Ø = = 是判断
Ø = = = 是全等
Ø 开发中判断是否相等,强烈推荐使用 = = =
c.字符串比较,是比较的字符对应的ASCII码
Ø 从左往右依次比较
Ø 如果第一位一样再比较第二位,以此类推
Ø 比较的少,了解即可
d.NaN不等于任何值,包括它本身
Ø 涉及到"NaN“ 都是false
f.尽量不要比较小数,因为小数有精度问题
g.不同类型之间比较会发生隐式转换
Ø 最终把数据隐式转换转成number类型再比较
Ø 所以开发中,如果进行准确的比较我们更喜欢 = = = 或者 !==
总结
- = 和 = = 和 = = = 怎么区别?
Ø = 是赋值
Ø = = 是判断 只要求值相等,不要求数据类型一样即可返回true
Ø = = = 是全等 要求值和数据类型都一样返回的才是true
Ø 开发中,请使用 === - 比较运算符返回的结果是什么?
Ø 结果只有2个, true 或者 false
1.4 逻辑运算符
1.提问:如果我想判断一个变量 num 是否大于5且小于10,怎么办?
Ø 错误写法: 5 < num < 10
·使用场景:逻辑运算符用来解决多重条件判断
Ø 正确写法: num > 5 && num < 10
2.逻辑运算符
总结
- 逻辑运算符有那三个?
Ø 与(&&) 或(||) 非(!) - 判断一个变量 num 是否大于5且小于10怎么写?
num > 5 && num < 10
1.5 运算符优先
· 一元运算符里面的逻辑非优先级很高
· 逻辑与比逻辑或优先级