国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

javascript每日必學之條件分支

2024-05-06 16:28:36
字體:
來源:轉載
供稿:網友
javascript每日必學之條件分支,本文的主要內容就是介紹的邏輯條件分支,循環,感興趣的小伙伴們可以參考一下
 

大家好,我們今天接著前面的講,前面已經大概了講了一下運算符,今天的任務主要就是講解邏輯條件分支,循環。
我們先就來模擬一個邏輯塊,就用我們經常接觸到的買車票來說吧,車票的價格對不同的人價格是有差別的,但是我們都是一樣的去執行買票這個行為,我們就可以把買票寫成一個函數BuyTicket

//代碼function BuyTicket(){  console.log("請付款200元");}

  大家看到了這個函數體,其實是有缺陷的,我們每個人去買票的時候,都是執行這一個函數,如果是軍人,或者是學生,這個函數就不適用了,他們 的折扣就沒有辦法使用了,我們只能多寫一個函數來解決這樣的問題,然后,我們的javascript語言已經給我們提供了分支語句,我們就可以輕松的解決這樣的問題了,我們可以把函數給修改一下,我們來看一下接下來修改后的代碼

function BuyTicket(identity){  if(identity == "學生"){    console.log("請付款100元");  }  if(identity == "軍人"){    console.log("請付款150元");  }  if(identity == "普通人"){    console.log("請付款200元");  }}//模擬3種人去買票BuyTicket("學生");BuyTicket("軍人");BuyTicket("普通人");

javascript每日必學之條件分支

這樣使用是不是比前面的寫法更科學,后面我還會慢慢升級,慢慢地大家就會明白程序的可愛之處。

通過上面的示例,我們不難看出,這樣一個函數,就可以解決分支的問題,我們現在來講解一下if分支語法

 if(條件){  //執行語句}

條件就是我們前面講到的,非空對象,非未定義對象,布爾值true,非0數字,所有字符串,我們函數體里面是用的 == 比較符來運算后得到一個布爾值來進行的判斷,這也是我們經常用到的一種方式,我們同樣可以用其他值來作為條件,再上一張圖片,讓大家來理解一下

javascript每日必學之條件分支

 A處:條件全部成立,所以都打印出了“執行了”幾個字;B處:條件都不是if條件的合格值,所以沒有執行。注:這里我們都是使用的明值,有時候我們就會使用運算后的返回值,就如前面的BuyTicket函數中所使用的 == 運算,返回的如果是true,就執行,如果返回的是false,肯定就不執行,我們每次執行BuyTicket時,所傳入的值,就只能符合一個條件。

接下來,我們學習一下完整的if分支

//第一種,兩個分支if(條件){  //執行}else{  //執行}

直接上圖,一下就明白了

javascript每日必學之條件分支

 A處:執行了前面的代碼;B處條件不合格,所以就執行了else塊里面的語句。很簡單,不多作解釋。

兩個分支的情況,就是始終會執行二者之一,不會兩個同時執行

//第二種,多個分支if(條件){  //執行}else if(條件){  //執行}else if(條件){  //執行}…else if(條件){  //執行}else{  //執行}

多個分支的情況,始終只執行其中之一,如果執行其中的某一個分支后,就不會再繼續下面的條件比較,是一種效率比較高的方式,如果單純地去寫if塊,就會像上面的BuyTicket函數一樣,那是一個效率很低的寫法,三個if塊都會去比較所以,我們可以改造一下BuyTicket函數

//代碼 funciton BuyTicket(identity){  if("學生"){    console.log("請付款100元");  }else if("軍人"){    console.log("請付款150元");  }else{    console.log("請付款200元");  }}

這種寫法就比較科學了,執行的效果也跟前面一樣,這樣寫的好處就是執行效率高了,條件逐一匹配,如果條件合格就執行,而不會再去匹配其他的條件塊,這樣效率就比前面寫的函數代碼優秀,然而,還有一種多分支的替換寫法,switch結構體,先看語法

switch(表達式){  case 常量表達式1:    //執行    break;  case 常量表達式1:    //執行    break;  case 常量表達式1:    //執行    break;  default:    //執行    break;}

從上往下執行的過程,就是,用表達式與下面的常量表達式逐個匹配,如果匹配上了,就執行里面的語句,記得,在每個case塊后面加上break關鍵字,不然,會依次執行后面的case塊里面的語句,直到遇到break為止,所以這個特性我們也可以利用起來,在合適的情況下,我們也會不寫break關鍵字。好了,我們先就用switch結構體來修改一下前面的BuyTicket函數

function BuyTicket(identity){  switch(identity){    case "學生":      console.log("請付款100元");      break;    case "軍人":      console.log("請付款150元");      break;    case "普通人":      console.log("請付款200元");      break;    default:      console.log("請出示身份證");    }}

default塊就是當一個表達式都沒有匹配上情況,我們默認執行這一塊的代碼,因為這也是最后一個代碼塊,所以也可以省略break關鍵字

 javascript每日必學之條件分支

  總結一下,今天,只說了條件分支之類的知識,if , if--else , if--else if--else , switch就這幾個條件分支語句塊,每天我也只能抽出一定的時間來寫,篇幅有限,下一篇就是寫循環了,好了,大家先去消化了,下一篇我們繼續。



注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南乐县| 苍南县| 铁岭市| 郴州市| 楚雄市| 娄烦县| 渭源县| 庆城县| 巴马| 治多县| 将乐县| 巴南区| 新河县| 揭东县| 郸城县| 涪陵区| 柘荣县| 南安市| 宁武县| 新晃| 永平县| 嵊州市| 车险| 政和县| 丰都县| 石狮市| 利川市| 双峰县| 普兰店市| 百色市| 东平县| 湘潭市| 邢台市| 彭泽县| 霸州市| 虎林市| 平昌县| 基隆市| 宝山区| 仁布县| 浠水县|