Tips:这个只是作者的学习笔记,仅作参考
目录
一.while循环结构
(一).语法
(二).while循环执行流程
(三).循环练习
二.do while循环结构
三.for循环结构
(一)语法:
(二)for循环执行过程:
(三)for循环练习
四.循环中的关键字
(一).continue
(二) .break
五.循环的嵌套
嵌套循环练习
循环
使代码重复地执行某一操作,就是循环.
一.while循环结构
(一).语法
while(条件){
条件为true的时候,执行的代码段
}
代码例如下
var a = 0
while (a <= 5) {
document.write('第' + a + '次我爱你<br/>')
a++
}
(二).while循环执行流程
初始值 a=1
条件判断 1<=5 -> true -> 执行大括号中代码段
a++ -> a=2
条件判断 2<=5 -> true -> 执行大括号中代码段
a++ -> a=3
条件判断 3<=5 -> true -> 执行大括号中代码段
a++ -> a=3
......
条件判断 6<=5 -> flase -> 结束
Tips:while循环需要我们在循环外就将变量声名好,在执行代码的过程中,一定要让变量进行变化,否则这个循环就会无休止的进行下去。
不会停止的循环叫做死循环,程序一直不会停止,cpu占用率越来越高,很容易造成系统崩溃。所以我们在写代码的时候一定避免写成死循环。
(三).循环练习
// 1. 输出1~5的数字
var a = 1
while (a <= 5) {
console.log(a);
a++
}
// 2.计算1~5的和
var a = 1
// 定义一个空容器
var num = 0
while (a <= 5) {
a++
num += a
}
console.log(num);
// 3.计算1~100中所有偶数的和
var a = 1
// 定义一个空容器
var num = 0
while (a <= 100) {
if (a % 2 === 0) {
num += a
}
a++
}
console.log(num);
// 4.计算100以内7的倍数以及带有7的数字
var a = 1
while (a <= 100) {
// if (a % 7 === 0) {
// console.log(a);
// }
// if (a % 10 === 7) {
// console.log(a);
// }
// if (a / 10 === 7) {
// console.log(a);
// }
if (a % 7 === 0 || a % 10 === 7 || a / 10 === 7) {
console.log(a);
}
a++
}
// 5.输出所有水仙花数
var a = 100
while (a <= 999) {
var bai = parseInt(a / 100)
var shi = parseInt(a / 10) % 10
var ge = a % 10
if (a === bai * bai * bai + shi * shi * shi + ge * ge * ge) {
console.log(a);
}
a++
}
// 6.打印100以内的奇数
var i = 1
while (i < 100) {
if (i % 2) {
console.log(i);
}
i++
}
二.do while循环结构
do while 循环是while循环的变异体。循环流程相似,唯一不同的地方在于do while循环会先执行一次,不管条件是否成立,先执行一次,后面的流程和while循环一样。
do{
当条件为true的时候执行的代码段
}while(条件)
例如下:
var a = 1
do {
document.write('我爱你<br/>')
a++
} while (a <= 5);
执行过程:
执行过程:
a=1
document.write('我爱你<br/>')
a++ -> a=1
条件1<5 ->true
document.write('我爱你<br/>')
a++ -> a=2
条件2<5 ->trrue
document.write('我爱你<br/>')
a++ -> a=3
...
条件5<5 -> false
结束
和while放一块对比仔细一点
// 先执行再判断
var a = 0
do {
document.write('我爱你<br/>')
a++
} while (a < 5);
// 先判断再执行
var b = 0
while (b < 5) {
document.write('我不爱你<br/>')
}
三.for循环结构
(一)语法:
for循环:
for (初始值; 条件; 变化) {
当条件为true的时候执行代码段
}
例代码如下:
for (var a = 1; a <= 5; a++) {
document.write('我爱你<br/>')
}
(二)for循环执行过程:
初始值:a=1
条件:a<=5 ->true
document.write('我爱你<br/>')
变化:a++ -> 2
条件:a<=5 ->true
document.write('我爱你<br/>')
变化:a++ -> 3
...
条件:a<=5 ->true
document.write('我爱你<br/>')
变化:a++ -> 6
条件:6<=5 -> false -> 结束
(三)for循环练习
// 1.输出1-5的数字
for (var a = 1; a <= 5; a++) {
console.log(a);
}
// 2.计算1-100的和
for (var a = 1; a <= 100; a++) {
// console.log(a);
sum += a
}
console.log(sum);
// 3.计算50-100之间所有奇数的和
var sum = 0
for (var a = 50; a <= 100; a++) {
if (a % 2 == 1) {
console.log(a);
sum += a
}
}
// 4.求所有的水仙花数
for (a = 100; a < 1000; a++) {
var bai = parseInt(a / 100)
var shi = parseInt(a / 10) % 10
var ge = a % 10
if (a === bai * bai * bai + shi * shi * shi + ge * ge * ge) {
console.log(a);
}
}
// 5.计算1-10之间所有奇数和
var sum = 0
for (var a = 1; a <= 10; a++) {
if (a % 2) {
sum += a
}
}
console.log(sum);
四.循环中的关键字
(一).continue
可以跳过当前这次的循环,直接进行下一次的循环。
// continue - 跳过
for (var a = 1; a < 5; a++) {
if (a === 3) {
continue
}
console.log(a);
}
(二) .break
break关键字,可终止循环,直接让整个循环结束运行。
//break - 中断
for (var a = 1; a <= 5; a++) {
if (a === 3) {
break
}
console.log(a);
}
// 中断输出
var a = 1
while (true) {
if (a === 10) {
break
}
}
console.log(a);
五.循环的嵌套
让一段重复执行代码重复执行,也就是设定一个大程序,让多个代码多运行几次。
例子如下:
for (var a = 1; a <= 3; a++) {
for (var b = 1; b <= 5; b++) {
console.log('第' + a + '个人跑了' + b + '圈');
}
}
效果如下:
嵌套循环练习
8*10表格
document.write('<table border=1 width=400 height=400>')
for (var a = 1; a <= 8; a++) {
document.write('<tr>')
for (var b = 1; b <= 10; b++) {
document.write('<td>')
document.write((a - 1) * 10 + b)
document.write('</td>')
}
document.write('</tr>')
}
document.write('</table>')
九九乘法表
// 九九乘法表
for (var a = 1; a <= 9; a++) {
for (var b = 1; b <= a; b++) {
document.write(b + '*' + a + '=' + a + b)
document.write(' ')
}
document.write('</br>')
}