JavaScript的第四天
赋值运算符
*+= -= = /= %=赋值运算符
一元运算符
1.前置自增和后置自增在不参与运算的情况下,都是自身加一
运行结果
2.参与运算的情况下,前置自增是先自身加一,在参与运算
后置自增是先参与运算,在自身加一
运行结果
运行结果
小案例(有点小烧脑)
1.代码
2.代码解析
1) m 是出现自增运算符就加一 …m=6
2) n是后置自增,先参与运算(给n赋值),在自身(m)加一…n=3 m=4
3) 后置自增,到了预算符另外一边,自身加一
k 中m++相当于 4++ ,到了+那边,自动加一,此时m=5
++m就相等于++5
++56 相当于先赋值运算再加6 即66=36
4++为后置运算,先运算 即4+36=40
此时k=40
3.运算结果
运算符优先级
一元运算符里面的逻辑非优先级很高
逻辑与比逻辑或优先级高
1.练习题
2.运算结果
3.解析
c false …!c true
b true
a false
先与运算后非预算 … b&&a false
!c || false …true
断点调试
while循环
循环是重复执行一段代码,直到条件不满足,结束执行
while (循环条件){
循环体 当循环条件为true时,循环一直执行 为false时,循环结束
}
2.运行结果
练习1
页面输出1-100
练习2
计算从1加到100的总和并输出
练习3
计算1-100所有偶数和
练习4
页面弹出对话框,‘你爱我吗’,如果输入‘爱’,则结束,否则一直弹出对话框
do-while循环
do{
循环体 先执行do里面的循环体一次,再去判断循环条件,如果条件为true,循环体继续执行
如果条件为false 循环结束
}while(循环条件)
求1-100的和
页面弹出对话框,‘你爱我吗’,如果输入‘爱’,则结束,否则一直弹出对话框
特殊情况 这里声明变量不要加let 因为加let 声明变量,到大括号外就不生效了
for循环
for (变量的起始值,循环条件,变量的变化值){
循环体
执行顺序
1.变量的起始值
2.判断循环条件, 循环条件为true 执行循环体
3.变量的变化值…判断循环条件…循环体
4.循环条件是false,循环结束
注意:变量的起始值,只执行一次
}
1.利用for循环输出1~100岁
2.求1 - 100之间所有数的平均值 1-100的和/100
运行结果
3.求1-100之间所有偶数和奇数的和
运行结果
4.求1-100之间所有能被3整除的数字的和
运行结果
for循环嵌套
外部循环控制里面循环执行的次数
for (外边循环的起始值; 循环条件; 变量变化值) {
里面循环控制循环体执行的次数
for (内部循环的起始值; 循环条件; 变量变化值) {
循环体
}
打印5行5列星
运行结果
打印正三角
运行结果
九九乘法表
第二个for循环是乘法表横着排列显示的,不是竖着的哦,所以第一个该是i,需要变化
j在外嵌套中变化数值,在内嵌套循环时数值不变
因此输出的时候,横排显示先写i
设置一下css样式 span是行内元素,转化为行内块元素*
(刚开始转化为看块级元素,每个都独占一行,还以为是什么bug,怀疑自己的找bug能力…心累)
运行结果
循环中断
continue:结束本次循环,继续下次循环
break:跳出所在的循环
求1-100之间 从第一个到第六个能被3整除的和
运行结果
三种循环的区别
for 语句和 while 语句是完全可互换的,for 的语法结构更简洁,故 for 循环的使用频次会更多
如果涉及到条件判断的时候使用while 更合适
如果涉及到计算次数的时候使用for更简单,语法更简单明了
do-while 循环体至少使用一次如果某些代码一定会执行一次可以考虑