js 循环和switch break continue语句

5 篇文章 0 订阅

1,js循环分为while和for循环。下面通过讲解以及代码案例进行学习。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>while</title>
    <script>
        /* 循环结构(重点)
        循环结构,就是根据某些给出的条件,重复的执行同一段代码
        循环必须要有某些固定的内容组成
        1. 初始化
        2. 条件判断
        3. 要执行大的代码
        4. 自身改变 */
        // 1. 初始化条件


        var num = 0
        // 2. 条件判断
        while (num < 10){
            // 3. 要执行的代码
            console.log('当前的 num 的值是' + num)
            // 4. 自身改变
            num = num + 1
        }

        // 案例1:求 1 ~ 100 所有数字的和 5050

        var n = 1
        var num = 0
        while(n <= 100){
            // console.log(n)
            num += n
            n++
        }
        console.log(num)
        // 案例2: 求一个数字的阶乘

        var i = 5
        var num = 1
        while(i > 0){
            num *= i
            i--
        }
        console.log(num)


        /* do while 循环
        是一个和while循环类似的循环
        while会先进行条件判断,满足就执行,不满足就不执行了
        但是do while 循环是,先不管条件,先执行一回,然后在开始进行条件判断
        语法:do {要执行的代码} while (条件) */
        // 下面这个代码,条件一开始就不满足,但是依旧会执行一次 do 后面 {} 内部的代码
        var num = 10
        do {
            console.log('我执行了一次')
            num = num + 1
        }while (num < 10)

        do{
            var res = prompt("请输入你的名字")
            // console.log(res)
            if(res){
                document.write(res)
            }
        }while(!res)
        /* for循环
        和while和do while 循环都不太一样的一种循环结构
        道理是和其他两种一样的,都是循环执行代码的
        语法:for(var i = 0; i < 10; i++) {要执行的代码}
         */

        // 把初始化,条件判断,自身改变,写在了一起
        for (var i = 1; i <= 10; i++){
            // 这里写的是要执行的代码
        }
        // 控制台会依次输出 1~10

        
    </script>
</head>
<body>
    
</body>
</html>

2,switch如下所示;

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>switch</title>
    <script>
        /* switch(要判断的变量){
            case 情况1:
                情况1要执行的代码
                break
            case 情况2:
                情况2要执行的代码
            case 情况3:
                情况3要执行的代码
            default:
                上述情况都不满足的时候执行的代码
        } */

        var sum = 80
        var youhuisum

        switch(true){
            case sum >= 200:sum
                youhuisum = sum - 10
                break;
            case sum >= 100 && sum < 200:
                youhuisum = sum - 5
                break;
            case sum >= 50 &&  sum < 100:
                youhuisum = sum - 3
                break;
            default:
                youhuisum = sum
                break;
        }


        console.log(sum, youhuisum)
    </script>
</head>
<body>
    
</body>
</html>

3,break continue如下所示;

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>break-continue</title>
    <script>
        // break终止循环
        /* 在循环没有进行完毕的时候,因为我设置的条件满足,提前终止循环
        比如:我要吃五个包子,吃到三个的时候,不能在吃了,我就停止吃包子这个事情
        要终止循环,就可以直接使用break关键字 */
        for (var i = 1; i <= 5; i++){
            //没循环一次,吃一个包子
            console.log('我吃了一个包子')
            // 当i的值为3的的时候,条件为true,执行{}里面的代码终止循环
            // 循环就不会继续向下执行了,也就没有4和5了
            if(i === 3){
                break
            }
        }

        // continue 结束本次循环
        /* 在循环中,把循环的本次跳过去,继续执行后续的循环
        比如:吃五个包子,到第三个时候,第三个掉掉地上了,不吃了,跳过第三个,继续吃第四个和第五个
        跳过本次循环,就可以使用continue关键字 */
        for (var i = 1; i <= 5; i++){
            // 当i的值为3的时候,执行{}里面的代码
            // {}里面有continue,那么本次循环后面的代码就都不执行了
            // 自动算作为3的这一次结束了,去继续执行 i = 4的那次循环了
            if(i === 3){
                console.log('这个是第三个包子,掉地下了,我不吃了')
                continue
            }
            console.
            log('我吃了一个包子')
        }

        // 求质数
        var n = 19;
        var isZhiShu = true
        for(var i = 2; i <= n/2; i++){
            if(n%i === 0){
                isZhiShu = false
                break
            }
            console.log(i)
        }

        if(isZhiShu){
            console.log('是')
        }else{
            console.log("不是")
        }


        // 九乘九表
        for(var m = 1; m <= 9; m++){
            for(var n = 1; n <= m; n++){
                document.write(m + "*" + n + " = " + m * n)
                document.write("&nbsp")
            }
            document.write("<br>")
        }
        
    </script>
</head>
<body>
    
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值