JS流程控制语句

JS学习第二天

1、流程控制语句

1. 顺序语句
2. 分支语句 (根据条件选择性执行)  
                        //    if语句    switch语句
3. 循环(根据条件循环执行,不满足条件时终止循环)

2、if的嵌套

 <script>
        // 输入月份,判断该月有几天(不考虑闰年平年)
        var x = +prompt("请输入数字...")
        // 1. 先检测是否是数字,不是数字弹出不是数字
        if (isNaN(x)) {
            alert('这不是数字')
        } else {
            // 是数字了,才可以进行下列判断
            if (x == 1 || x == 3 || x == 5 || x == 7 || x == 8 || x == 10 || x == 12) {
                alert(x + '月有31天');
            } else if (x == 2) {
                alert(x + '月有28天')
            } else if (x == 4 || x == 6 || x == 11 || x == 9) {
                alert(x + '月有30天')
            } else {
                alert('输入数字不在范围内')
            }
        }
    </script>

3.分支语句语法

var x = +prompt('请输入您的年龄...');//12
if (x>=18) {
              console.log('可以进网吧了');
          }else{
              console.log('请出去。。。。');
          }
三种:
        1. 单分支   if(条件表达式){}
        2. 双分支   if(){}else{}
        3. 多分支   if(){}else if(){} else if(){}... else{}
 单分支
        var x = 10;
        对x变量进行判断,如果条件表达式为true,就执行紧挨着的大括号
                        如果条件表达式为false,就不执行紧挨着的大括号
        if (x>=20) {
            console.log('123');
        }
        console.log('over');

        var x = +prompt('请输入...');
  双分支 
        条件表达式的意思是:x是一个偶数
        if (x%2==0) {
            console.log('我是偶数');
        } else {
            console.log('我是奇数');
        }



        条件表达式值为true{} 就会执行
        if (条件表达式) {  }

        if (x) {}   ---等价于---->   if (Boolean(x)) {}


        Boolean()''  0   null  NaN  undefined 转为false

        if ('xyz') {
            alert('123')
        }

        if (7>=7) {
            alert('321')
        }

输入一个数字,判断处于哪个成绩段(优秀,良好,差)
        多分支
        var x = +prompt('请输入数字....');
        if(x>=80&&x<=100){
          alert('优秀')
        }else if(x>=60&&x<80){
            alert('良好')
        }else if(x<60&&x>=0){
            alert('差生')
        }else{
            alert('你输入的数字超出成绩范围')
        }

        输入一个数字,判断处于哪个成绩段(优秀,良好,差)
        输入数字,判断是星期几  
        输入月份,判断该月有几天(不考虑闰年平年)
        var x = +prompt("请输入数字...")
        if (x==1||x==3||x==5||x==7||x==8||x==10||x==12) {
            alert(x+'月有31天');
        }else if(x==2){
            alert(x+'月有28天')
        }else if(x==4||x==6||x==11||x==9){
            alert(x+'月有30天')
        }else{
            alert('输入数字不在范围内')
        }
        输出数字,判断是春天,夏天,秋天,冬天  

          春:3 4 5 
          夏:6 7 8
          秋:9 10 11
          冬: 12 1 2 
        var x = parseInt(prompt('请输入数字....'));
        if(x>=3&&x<=5){
           alert('春天')
        }else if(x>=6&&x<=8){
           alert('夏天')
        }else if(x>=9&&x<=11){
            alert('秋天')
        }else if(x==12 || x==1 || x==2){
             alert('冬天')
        }else{
            alert('您输入的数据超出范围')
        }

4、分支语句案例

<input type="text" id="ipt">
<!-- 点击按钮执行fn() 中定义的代码 -->
<button onclick="fn()">点击按钮判断</button>
<script>
        //  获取文本框:
        //  document.getElementById('ipt')获取到input标签,存入oIpt中
        //  DOM: document文档
        // get 获取 element 标签(元素) by 通过 id
        // 在document 中通过id取得到元素
        // var oIpt = document.getElementById('ipt');
        // console.log(oIpt.value); // 获取oIpt的内容,值
        
        function fn() {
            var oIpt = document.getElementById('ipt');
            // alert(oIpt.value); // 获取oIpt的内容,值
            if (oIpt.value=='zs') {
                alert('欢迎你,张三')
            }else{
                alert('你好像不是张三,请你出去')
            }
        }
</script>

5、switch语句

switch的语法 
        表达式:通过运算得到一个值,3+2  5>3

        执行流程:拿匹配表达式和case后的常量进行比对,必对成功的,进入程序,输出该case选项
                  的语句以及后面的语句,遇到break终止。
        switch (匹配表达式) {
            case 常量值:
                语句;
                break;
            case 常量值:
                语句;
                break;
            case 常量值:
                语句;
                break;
            case 常量值:
                语句;
                break;
            default: 
                语句;
                break;
        }

5.1 switch 语句案例

 // 输入月份,判断该月有几天(不考虑闰年平年)
        var x = Number(prompt("请输入数字..."))
        // 1. 先检测是否是数字,不是数字弹出不是数字
        if (isNaN(x)) {
            alert('这不是数字')
        } else {
            // 是数字了,才可以进行下列判断
            switch (x) {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
                case 12:
                    alert('31天');
                    break;
                case 2:
                    alert('28天');
                    break;
                case 4:
                case 6:
                case 9:
                case 11:
                    alert('30天');
                default:
                    alert('您输入的数字不在范围内')
            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值