013|多分支條件語(yǔ)句

上一節(jié)學(xué)習(xí)了基本的條件語(yǔ)句,也即二分支語(yǔ)句。

現(xiàn)在有一個(gè)新需求,你需要寫一個(gè)腳本,根據(jù)學(xué)生的考試分?jǐn)?shù),輸出學(xué)生的考評(píng)。規(guī)則如下:

  • 考試分?jǐn)?shù)大于等于80分,優(yōu)秀
  • 考試分?jǐn)?shù)大于等于70分,小于80分,良
  • 考試分?jǐn)?shù)大于等于60分,小于70分,中
  • 考試分?jǐn)?shù)小于60分,不及格

如果應(yīng)用上一節(jié)的2分支語(yǔ)句,我們會(huì)寫出如下的代碼:

var score = 18

if (score>=80){
    console.log("優(yōu)秀")  // 分支1
}
else{
    if (score>=70){
        console.log("良") // 分支2
    }
    else{
        if (score>=60){
            console.log("中") // 分支3
        }
        else{
            console.log("不及格") // 分支4
        }
    }
}

上面的代碼反復(fù)使用 if...else... 條件語(yǔ)句來解決此問題。我們來看一下運(yùn)行結(jié)果:

考評(píng)輸出結(jié)果

可以看到,程序正確輸出了考評(píng)。上面存在if...else...的嵌套使用,使得代碼邏輯并不是那么清晰。

嵌套的涵義是, if...else... 分支語(yǔ)句中又使用了 if...else...

在JavaScript中可使用 else if 多分支語(yǔ)句字來處理上述問題。多分支語(yǔ)句的語(yǔ)法規(guī)則如下:

if (condition_1) {
  statement_1;
}
[else if (condition_2) {
  statement_2;
}]
... // 可以擁有1個(gè)至多個(gè) else if 分支
else {
  statement_n;
}

else if 語(yǔ)句被插入到if與else之間,else if 自帶了一個(gè)條件判定 condition,如果conditon為true,則else if 分支將被執(zhí)行。

下面使用 else if 來優(yōu)化一下上問的腳本。優(yōu)化代碼如下:

var score = 18

if (score>=80){
    console.log("優(yōu)秀") // 分支1
}
else if(score>=70){
    console.log("良") // 分支2
}
else if (score>=60){
    console.log("中") // 分支3
}
else{
    console.log("不及格") // 分支4
}

可以看到,前一個(gè)腳本中的if...else...嵌套不見了,現(xiàn)在所有的分支都同級(jí)了,代碼邏輯變得異常清晰。我們?cè)倏匆幌逻\(yùn)行結(jié)果:

else if 腳本執(zhí)行結(jié)果

可以看到,腳本正確輸出了考評(píng)。所以使用 else if 與使用 if...else... 是等價(jià)的,使用 else if 更加的優(yōu)雅。

好了,這一節(jié)就講完了。這一節(jié)里,我們學(xué)習(xí)了多分支條件語(yǔ)句。恭喜你, 你已掌握了最常見的分支語(yǔ)句技巧!再繼續(xù)學(xué)習(xí)下去,你會(huì)變得更強(qiáng)。

還有其它處理多分支語(yǔ)句的技巧嗎?

什么是循環(huán)語(yǔ)句?
什么是變量作用域?

請(qǐng)繼續(xù)關(guān)注我的課程,我將在后續(xù)課程中幫大家依次解答上述問題。

想學(xué)計(jì)算機(jī)技術(shù)嗎?需要1對(duì)1專業(yè)級(jí)導(dǎo)師指導(dǎo)嗎?想要團(tuán)隊(duì)陪你一起進(jìn)步嗎?歡迎加我為好友!

我的微信
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,628評(píng)論 18 399
  • 個(gè)人學(xué)習(xí)批處理的初衷來源于實(shí)際工作;在某個(gè)迭代版本有個(gè)BS(安卓手游模擬器)大需求,從而在測(cè)試過程中就重復(fù)涉及到...
    Luckykailiu閱讀 4,975評(píng)論 0 11
  • 前言 ||| 第二章 使用ArcPy編寫腳本 Python支持大部分在其他語(yǔ)言中出現(xiàn)的編程結(jié)構(gòu)。在本章內(nèi)容中,我們...
    muyan閱讀 90,785評(píng)論 10 55
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,995評(píng)論 0 11
  • 淚別狼叔,血戰(zhàn)謝幕,在一張宣傳海報(bào)上看到這句話,心里不禁揪了一下,這一次,是真的告別了。遲暮的狼叔,已經(jīng)無(wú)法抗拒衰...
    九月露閱讀 622評(píng)論 3 15

友情鏈接更多精彩內(nèi)容