运算符
赋值运算符
=
将等号右边的值赋予给左边, 要求左边必须是一个容器
其他赋值运算符:
+=
-=
*=
/=
%=
//低配版
let num = 1
num = num + 1
console.log(num) //2
//高配版 怎么写,都有面
let num = 1
num += 1
console.log(num)
一元运算符
只需要一个表达式就可以运算的运算符叫一元运算符
自增:
符号:++
作用:让变量的值
+1
自减:
符号:--
作用:让变量的值
-1
使用场景:
经常用于
计数
来使用。 比如进行10次操作,用它来计算进行了多少次了
前置自增:
let i = 1
console.log(++i + 2) //结果为 4
//注意:i为2
//i先自加1,变成2之后,在和后面的2相加
后置自增:
let i = 1
console.log(i++ + 2) //结果为 3
//注意: i为1
//i先和2相加,先运算完毕之后,i再自加为2
实际开发中,我们一般都是单独使用的,后置++更多
//来个有趣的题,你会很开心的
let i = 1
console.log(i++ + ++i + i) //结果是 7 不知道难住你没,哈哈
比较运算符
> : 左边是否大于右边
<: 左边是否小于右边
>=: 左边是否大于或等于右边
<=: 左边是否小于或等于右边
==: 左右两边值是否相等
===: 左右两边是否类型和值都相等
!==: 左右两边是否不全等
比较结果为boolean类型,即只会得到 true 或 false
对比:
= 是赋值
== 是判断 只要求
值
相等,不要求数据类型一样即可返回true
=== 是全等 要求
值和数据类型
都一样返回的才是true
开发中判断是否相等,强烈推荐使用 ===
字符串比较,是比较的字符对应的
ASCII码
从左往右依次比较
如果第一位一样再比较第二位,以此类推
NaN不等于任何值,包括它本身
涉及到"NaN“ 都是false
console.log(NaN === NaN) //false
尽量不要比较小数,因为小数有精度问题
不同类型之间比较会发生隐式转换
最终把数据隐式转换转成number类型再比较
所以开发中,如果进行准确的比较我们
更喜欢 ===
或者 !==
逻辑运算符
高级软件
一元运算符里面的
逻辑非优先级很高
逻辑与比逻辑或优先级高
let a = 3 > 5 && 2 < 7 && 3 == 4
console.log(a); //false
//一假则假
let b = 3 <= 4 || 3 > 1 || 3 != 2
console.log(b); //true
//一真则真
let c = 2 === "2"
console.log(c); //false
let d = !c || b && a
console.log(d); //true
培训专家
语句
表达式:
因为表达式可被求值,所以它可以写在赋值语句的右侧
如: num = 3 + 2
语句不一定有值,所以比如 alert() for和break 等语句就
不能被用于赋值
分支语句
if语句
if(条件){
满足条件要执行的代码
}
//括号内的条件为true时,进入大括号里执行代码
//小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型
//如果大括号只有一个语句,大括号可以省略,但是,不建议哦
双分支if语法
if(条件){
满足条件要执行的代码
}else{
不满足条件要执行的代码
}
三元运算符
条件?满足条件执行的代码 : 不满足条件执行的代码
//例子
num > 2 ? num = 3 : num = 1
//这个简便一点,推荐使用,有面
switch语句
switch(数据){
case 值1:
代码1
break
case 值2:
代码2
break
default:
代码n
break
}
/*
找到跟小括号里数据全等的case值,并执行里面对应的代码
若没有全等 === 的则执行default里的代码
例:数据若跟值2全等,则执行代码2
*/
switch case语句一般用于等值判断,不适合于区间判断
switch case一般需要配合break关键字使用 没有break会造成case穿透
循环结构
while 循环
while(循环条件){
要重复执行的代码(循环体)
}
/*
跟if语句很像,都要满足小括号里的条件为true才会进入 循环体 执行代码
while大括号里代码执行完毕后不会跳出,而是继续回到小括号里判断条件是否满足,若满足又执行大括号里
的代码,然后再回到小括号判断条件,直到括号内条件不满足,即跳出
*/
while循环需要具备三要素
:
1.
变量起始值
2.
终止条件(没有终止条件,循环会一直执行,造成死循环)
3.
变量变化量(用自增或者自减)
let i = 1 //变量起始值
while(i <= 3){
document.write('我会循环三次<br>')
i++
}
// i <= 3 为终止条件
// i++ 为变量变化量(用自增或者自减) 这个必须有,不然死循环了 呜呜
循环退出
循环结束:
break:退出循环
continue:结束本次循环,继续下次循环
区别:
continue 退出本次循环,
一般用于
排除
或者跳过某一个选项的时候, 可以使用continue
break 退出整个循环,
一般用于结果已经得到, 后续的循环不需要的时候可以使用