JavaScriptの分岐文

19989 ワード

JavaScriptの分岐文
  • 1、if文
  • 1.1 if構造
  • 文法:if(条件){ブロック}
  • if-else構造
  • 文法:if(条件){ブロック1;}else{ブロック2;}
  • if-else if構造
  • 文法:if(条件1){ブロック1;}else if(条件2){ブロック2;}else{文ブロック3;}
  • var year = Number(prompt('     '));
    var month = Number(prompt('     '));
    var day = Number(prompt('    '));
    var isRun = (year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0);
    var dayNum = 0;
    if(month == 1){
        var dayNum = day;
    } else if(month == 2) {
        var dayNum = 31 + day;
    } else if(month == 3) {
        var dayNum = 59 + day;
    } else if(month == 4) {
        var dayNum = 90 + day;
    } else if(month == 5) {
        var dayNum = 120 + day;
    } else if(month == 6) {
        var dayNum = 151 + day;
    } else if(month == 7) {
        var dayNum = 181 + day;
    } else if(month == 8) {
        var dayNum = 212 + day;
    } else if(month == 9) {
        var dayNum = 243 + day;
    } else if(month == 10) {
        var dayNum = 273 + day;
    } else if(month == 11) {
        var dayNum = 304 + day;
    } else {
        var dayNum = 334 + day;
    }
    if(month >= 3 && isRun){
        var dayNum = dayNum + 1;
    }
    console.log(year + " " + month + " " + day + "      " + dayNum + " ");
    
  • 、switch文(等値判定)
  • 文法:switch(変数){case値1:文ブロック1 break;default:文ブロック2}
  • 注意:
  • 1、変数と値は全部などの方式で判断します.つまり、データタイプと数値は完全に一致しなければなりません.
  • 、breakは省略して書かないとマッチしたcaseブロックから順に下に実行されます.
  • var input = prompt('     (1-5)');
    switch(input){
    	case "1":
    	    alert("      1")
    	    break;
    	case "2":
    	case "3":
    	    alert("     2  3")  //   2 3 ,      
    	    break;
    	case "4":
    	    alert("      4")  //   4 ,  break,   default    
    	default:
    	    alert("  ")
    }
    
    var year = Number(prompt('     '));
    var month = Number(prompt('     '));
    var day = Number(prompt('    '));
    var isRun = (year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0);
    var dayNum = 0;
    switch(month-1) {
        case 11:
            dayNum += 30;
        case 10:
            dayNum += 31;
        case 9:
            dayNum += 30;
        case 8:
            dayNum += 31;
        case 7:
            dayNum += 31;
        case 6:
            dayNum += 30;
        case 5:
            dayNum += 31;
        case 4:
            dayNum += 30;
        case 3:
            dayNum += 31;
        case 2:
            dayNum += 28;
        case 1:
            dayNum += 31;
        case 0:
            dayNum += day;
            break;
        default:
            alert("    !")
    }
    
    if(month >= 3 && isRun){
        var dayNum = dayNum + 1;
    }
    
    if (dayNum == 0){
        console.log("    ");
    }else{
        console.log(year + " " + month + " " + day + "      " + dayNum + " ");
    }