循环语句
循环就是可以在可规定的条件下重复多次执行同一段代码
while 循环语句
格式
初始化
while (条件) {
满足条件时执行的代码
改变自身(任意方法改变)
}
例
- 求 1~100 的和
var x = 100
var sum = 0
while (x > 0) {
sum += x
x -- //改变自身 必须写 不然就是死循环
}
console.log(sum)//sum == 5050
- 求 1~100 之间所有 3 的倍数的和
var x = 1
var sum = 0
while (x <= 100) {
if (x % 3 == 0) {
sum += x
}
x ++
}
console.log(sum)//x == 1683
do...while 循环语句
与while循环有所不同的地方在于首轮循环
while循环每次执行都是先判断条件 而 do.....while循环的第一次循环比较特殊 它会无视条件直接执行,若后续条件不满足执行 则会停止执行
例
- 用户输入密码, 正确提示页面打卡, 错误继续输入
prompt() //用于获取用户输入的数据
do {
var x = prompt() - 0;
}while(x !== 123)
console.log('密码正确')
for 循环语句
- 将 1000~2000 之间的所有闰年输出在页面上`
for (i = 1000; i <= 2000; i++ ) {
if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
console.log(i + '年是闰年')
}
}
- 求水仙花数 三次自幂数
var str = prompt(), a, b, c
a = parseInt(str / 100)
b = parseInt(str / 10 % 10)
c = parseInt(str % 10)
if (a ** 3 + b ** 3 + c ** 3 == str) {
console.log(str + '是水仙花数')
}else{
console.log(str + '不是水仙花数')
}
流程控制语句
break会直接结束循环 也就是跳出所有循环
例
for (i = 0
if (i == 4) {
break
}
console.log(i)// 打印结果为0 1 2 3
}
continue会跳出本轮循环 进入下一轮循环
例
for (i = 0; i <= 10; i++){
if (i == 5 || i ==8){
continue
}
console.log(i) // 打印结果为 0 1 2 3 4 6 7 9 10
}
循环嵌套的书写
如字面意思 就是多个循环进行嵌套 多个循环嵌套之后的执行顺序为 外层循环一次 内层循环循环一个周期
例 打印一个9 x 9 的表格 i 表示行 i打印一对 标签的时候会先打印 ..9对标签
document.write('<table style = "border:2px solid red">')
for(i = 1; i <= 9; i++){
document.write('<tr>')
for(s = 1; s <= 9; s++){
document.write('<td style="width:50px;height:50px ;border:1px solid pink;">'+'1'+'</td>')
}
document.write('</tr>')
}
document.write('</table>')
例
- 在页面使用 * 打印 9 * 9 的方阵
for (i = 1
for (s = 1
document.write('*')
}
document.write('<br>')
}
- 在页面使用 * 打印 三角形
for (i = 1
for (s = 1
document.write('*')
}
document.write('<br>')
}