javascript-條件判斷語句


12-if分支語句

    <script>/*
        // 1. if 的語法結構
        if (條件表達式){
            // 執行語句
        }*/
        // 2. 如果條件表達式為真,則執行大括號內的執行語句
        // 3. 如果 條件表達式為假,則不執行
        var age = 16;
        if(age>=18){
            console.log('可以買酒');
        }
        else{
            console.log('不可向未成年人出售煙酒');
        }
    </script>

13-進入網吧案例 

    <script>
        /* 進入網吧案例
        ① 彈出prompt 輸入年齡
        ② if判斷輸入值是否大於18
        ③ 是,則可以進入網吧;否,則不可以
        */
       var age=prompt('please input your age:');
       if(age>=18){
           alert('您可以進入網吧');
       }
       else{
           alert('您不可以進入網吧,滾去學習');
       }
    </script>

14-判斷閏年案例 

    <script>
        /* 判斷閏年案例
        ①輸入年份
        ②判斷年份是否是閏年
        ③如果是,就彈出閏年
        ④如果不是,就彈出是平年
        */
       var year=prompt('請輸入你年份');
       if(year%4==0 && year%100!==0 || year%400==0 ){
          alert(year+'是閏年');
       }
       else{
           alert(year+'是平年');
       }
    </script>

16-if else if多分支語句 

    <script>
        /* 
        ①輸入姓名
        ②判斷姓名是否是tb
        ③如果是,就彈出中獎
        ④如果不是,就彈出unlucky
        */
       var yourName=prompt('please input your name:');
       if (yourName=='tb'|| yourName =='daisy'){
           alert('Lucky boy, you own the award!!')
       }
       else{
           alert('Unluckyman, you miss it.')
       }
    </script>

17-判斷成績案例 

    <script>
        /*
        ①獲取輸入分數
        ②if else分支語句判斷輸入分數符合哪一個分支的條件
        ③
        */
        var score=prompt('please input your score:');
        if (score>=90){
            alert('Excellent!! Your grade is : A')
        }else if(80<=score && score<90){
            alert('Great! Your grade is : B')
        }else if(70<=score && score<80){
            alert('Good! Your grade is : C')
        }else if(60<=score && score<70){
            alert('Not Bad! Your grade is : D')
        }else{
            alert('I am sorry. Your grade is : E')
        }
</script>

18-三元表達式 

    <script>
        /* 三元表達式
        1. 由三元運算符組成的式子,e.g.
            條件表達式? 表達式1:表達式2
        2. 執行思路:條件真,返回表達式1;條件假,返回表達式2;
        3. 可以理解為,簡化版的判斷語句
        */
        var num=10;
        var bo=num>5? 'yes':'no';
        alert(bo);

        // if語句實現同等效果:
        if(num>5){
            alert('yes')
        }else{
            'no'
        }
    </script>

19-數字補0案例 

    <script>
        /* 三元表達式
        1. 聲明,輸入一個0-59的數字
        2. 判斷,數字是否小於十,是,則補0
        3. 輸出
        */
        var num1=prompt('please input a number(0~59)');
        //用if判斷語句
        // if(num1<10){
        //     console.log(0+num1);
        // }else{
        //     console.log(num1);
        // }
        // 用三元表達式
        num1<10? alert('0'+num1):alert(num1);
    </script>

20- switch:分支語句 

    <script>
        /* 1. switch語句也是多分支語句,可以實現多選1
           2. 語法結構 switch轉換、開關、case例子或者選項的意思
        */
       /*
       switch(表達式){ 
        // 3. 表達式和value進行匹配,匹配上就執行,都沒有就執行最后一個;
           case value1:執行語句1;break;
           case value2:執行語句2;break;
           case value3:執行語句3;break;
           default:最后的語句
       }
       */
    //    4. 代碼驗證
        var num1=prompt('input a number:');
        switch(parseInt(num1)){
            case 1:alert('a');break;
            case 2:alert('b');break;
            case 3:alert('c');break;
            case 4:alert('d');break;
            case 5:alert('e');break;
            case 6:alert('f');break;
            case 7:alert('g'); break;
            default:alert('nothing');
        }
        // 總結:如果是特定值用switch;如果是一個范圍用else if
</script>

21-switch注意事項

 <script>
        /* 1. switch語句也是多分支語句,可以實現多選1
           2. 語法結構 switch轉換、開關、case例子或者選項的意思
        */
       /*
       switch(表達式){ 
        // 3. 表達式和value進行匹配,匹配上就執行,都沒有就執行最后一個;
           case value1:執行語句1;break;
           case value2:執行語句2;break;
           case value3:執行語句3;break;
           default:最后的語句
       }
       */
    //    4. 代碼驗證
        // var num=2;
        /*
        switch(num){ // 這個switch括號內的值要和case后的值全等===才能匹配上
            case 1:console.log(1);break;
            case 2:console.log(2);break;
            case 3: console.log(3); break;
        }
        */
        // 沒有break會發生什么? ——繼續執行下一個case,直到break
        var num = 1;
        switch (num) { 
            case 1: console.log(1); 
            case 2: console.log(2); 
            case 3: console.log(3); break;
        }
        // 在開發中,表達式經常被寫成變量;
        // switch()和case里的值匹配時,必須是全等才有效,即===,數據類型和值都相等,如5和'5'的區別
        // 如果沒有break,那么switch會在執行完這個case后,繼續執行下一個case
    </script>

 

22-查詢水果價格案例

    <script>
        /* 查詢水果價格
        ① 聲明,輸入水果名稱
        ② 輸入的是字符串,case后面也要是字符串'
        ③ defult是“沒有此水果”
        */
       var fruitPr=prompt('please input the fruit:');
       switch(fruitPr){
           case '橙子':alert(fruitPr+ ':' + ' 5rmb');break;
           case '西瓜':alert(fruitPr+ ':' + ' 3rmb');break;
           case '蘋果':alert(fruitPr+ ':' + ' 4rmb');break;
           case '獼猴桃':alert(fruitPr+ ':' + '8rmb');break;
           case '山竹':alert(fruitPr+ ':' + '10rmb');break;
           case '葡萄': alert(fruitPr + ':' + '9rmb'); break;
           default: alert("there's no "+fruitPr);
       }
    </script>

if else和switch

①一般情況下,它們兩個語句可以相互替換
② switch..case語句通常處理case為比較確定值的情況,而i.else.語句更加靈活,常用於范圍判斷(大於、等於某個范圍)
③ switch語句進行條件判斷后直接執行到程序的條件語句,效率更高。而if...else語句有幾種條件,就得判斷多少次。
④當分支比較少時,if...else語句的執行效率比 switch語句高。
⑤當分支比較多時, switch語句的執行效率比較高,而且結構更清晰

大作業

    <script>
// 1.判斷時間階段。比如用戶輸入12點彈出中午好,用戶輸入18點彈出傍晚好,用戶輸入23點彈出深夜好
/*        var time=prompt('請輸入時間__點:');
        
        if(time==12){
            alert('中午好!');
        }else if(time==18){
            alert('傍晚好!');
        }else if(time==23){
            alert('深夜好!');
        }
*/
// 2.比較兩個數的最大值(用戶依次輸入2個值,最后單出最大的那個值)
/*        var num1=prompt('please input the first number:');
        var num2=prompt('please input the second number:');
        if(num1>num2){
            alert('the bigger one is:'+num1);
        }else{
            alert('the bigger one is:' + num2);
        }
*/
// 3.用戶輸入一個數,來判斷是奇數還是偶數
/*        var numb = prompt('please input a number:');
        if(numb % 2 == 0){
            alert(numb + '是偶數');
        }else{
            alert(numb + '是奇數');
        }
*/
// 4.根據用戶輸入的數值(數字1到數字7),返回星期幾
/*        var weekd=prompt('please input a number(1~7):');
        switch(parseInt(weekd)){
            case 1:alert('星期一');break;
            case 2:alert('星期二');break;
            case 3:alert('星期三');break;
            case 4:alert('星期四');break;
            case 5:alert('星期五');break;
            case 6:alert('星期六');break;
            case 7:alert('星期日');break;
            default:alert('???what the fuck???');
        }
*/
// 5.接收班長口袋里的錢數?若大於等於2000,請大家吃西餐。若小於2000,大於等於1500,請大家吃快餐。若小於1500,大於等於1000,請大家喝飲料。若小於1000,大於等於500,請大家吃棒桲糖。否則提醒班長下次把錢帯夠;
/*        var money=prompt('please input the rest money you have:');
        if(money>=2000){
            alert('吃西餐');
        }else if(money<2000 && money>=1500){
            alert('吃快餐');
        }else if(money<1500 &&money>=1000){
            alert('喝飲料');
        }else if(money<1000 && money>=500){
            alert('吃糖果');
        }else{
            alert('下次帶夠錢嗷');
        }
*/
// 6.分數轉換:給一個分數,判定等級。大於等於90A,大於等於80小於90B,大於等於70小於80C,大於等於60小於70D,小於60E;
/*        var score = prompt('please input the score:');
        if (score >= 90) {
            alert('A');
        } else if (score < 90 && score >= 80) {
            alert('B');
        } else if (score < 80 && score >= 70) {
            alert('C');
        } else if (score < 70 && score >= 60) {
            alert('D');
        } else {
            alert('E');
        }
*/
// 7.預習下循環控制for循環
    </script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM