循环语句

94 阅读3分钟

什么是循环语句

根据某些给定出来的条件,重复执行同一段代码

循环必须要有某些固定的内容组成

  1. 初始化
  2. 条件判断
  3. 要执行的代码
  4. 自身的改变

while 循环语句

while 当条件满足时就执行代码
while (条件) { 满足条件就会执行 }

因为满足条件就执行,所以我们写的时候一定要注意设定一个边界值,不然就一直循环下去,简称死循环

// 1. 初始化条件
var num = 0
// 2. 条件判断
while(num < 10){
    // 3. 要执行的代码
    console.log("当前 num 的值是", num)
    // 4. 自身改变
    num += 1    // 如果没有这行代码,那么自身就没有改变,条件将会一致满足,代码也就一直执行
}

// "当前 num 的值是 0"
// "当前 num 的值是 1"
// "当前 num 的值是 2"
// "当前 num 的值是 3"
// "当前 num 的值是 4"
// "当前 num 的值是 5"
// "当前 num 的值是 6"
// "当前 num 的值是 7"
// "当前 num 的值是 8"
// "当前 num 的值是 9"

do...while 循环语句

是一个和 while 循环类似的循环
do { 要执行的代码 } while(条件)

区别
while 会先进行条件的判断,满足就执行,不满足就直接不执行
do...while 是先执行一次,然后在开始进行条件的判断

// 1. 初始化
var num = 10
do{
    // 3. 要执行的代码
    console.log("我执行了一次")
    // 4. 自身改变
    num += 1 
} while(num < 10)    // 2. 条件判断

// "当前 num 的值是 10"

for 循环语句

和 while / do...while 循环不同
for(let i = 0; i < 10; i++){ 要执行的代码 }

流程控制语句

break 关键字的应用

在循环没有进行完毕的时候,因为我设置的条件满足了,就直接提前终止循环
eg: 吃了5个包子,吃了3个吃不下了,那么就停止吃后面的,此时停止循环,就可以直接使用 break 关键字

for(let i = 1; i <= 5; i++) {
    // 每循环一次,就吃一个包子
    console.log("我吃了第" + i + "个包子")
    // 当 i === 3 的时候,条件为 true,执行了 {} 里面的代码终止循环,循环就不会继续向下执行了,也就是没有第4次和第5次
    if(i === 3){
        break
    }
}


//  我吃了第 1 个包子
//  我吃了第 2 个包子
//  我吃了第 3 个包子

continue 关键字的应用

在循环中,把本次的循环跳过去,继续执行后续的循环
eg: 吃了5个包子,吃第3个的时候,第3个掉地上了,所以就不吃第3个了,继续吃第4个和第5个,跳过本次循环,就可以使用 continue 关键字

for(let i = 1; i <= 5; i++){
    // 当 i === 3 的时候,执行 {} 里面的代码
    // {} 里面有 continue,那么本次循环后面的代码就都不执行了
    // 自动算作 i 为 3 的这一次结束了,去继续执行 i === 4 的那次循环
    if(i === 3){
        console.log("这是第三个包子,掉地上了不吃了")
        continue
    }
    console.log("我吃了第" + i + "个包子")
}

//  我吃了第 1 个包子
//  我吃了第 2 个包子
//  我吃了第 4 个包子
//  我吃了第 5 个包子

循环嵌套的书写

一个循环内部又写了一个循环

for(var i = 0; i < 3; i++) {          // 外层循环
    for(var k = 1; k < 4; k++) {      // 内层循环
        // 两个循环的循环变量不能相同,会有冲突
    }
}