




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
JavaScript流程控制-分支Contents目流程控制順序流程控制分支流程控制if語(yǔ)句三元表達(dá)式分支流程控制switch語(yǔ)句1.流程控制要通過(guò)控制代碼的在一個(gè)程序執(zhí)行的過(guò)程中,各條代碼的執(zhí)行順序?qū)Τ绦虻慕Y(jié)果是有直接影響的。很多時(shí)候執(zhí)行順序來(lái)實(shí)現(xiàn)
要完成的功能。簡(jiǎn)單理解:
流程控制就是來(lái)控制
的代碼按照什
順序來(lái)執(zhí)行流程控制主要有三種結(jié)構(gòu),分別是順序結(jié)構(gòu)、分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu),這三種結(jié)構(gòu)代表三種代碼執(zhí)行的順序。Contents目流程控制順序流程控制分支流程控制if語(yǔ)句三元表達(dá)式分支流程控制switch語(yǔ)句2.順序流程控制順序結(jié)構(gòu)是程序中最簡(jiǎn)單、最基本的流程控制,它沒有特定的語(yǔ)法結(jié)構(gòu),程序會(huì)按照代碼的先后順序,依次執(zhí)行,程序中大多數(shù)的代碼都是這樣執(zhí)行的。Contents目流程控制順序流程控制分支流程控制if語(yǔ)句分支流程控制switch語(yǔ)句三元表達(dá)式3.分支流程控制if語(yǔ)句3.1分支結(jié)構(gòu)由上到下執(zhí)行代碼的過(guò)程中,根據(jù)不同的條件,執(zhí)行不同的路徑代碼(執(zhí)行代碼多選一的過(guò)程),從而得到不同的結(jié)果JS語(yǔ)言提供了兩種分支結(jié)構(gòu)語(yǔ)句if語(yǔ)句switch語(yǔ)句3.2if語(yǔ)句1.語(yǔ)法結(jié)構(gòu)//條件成立執(zhí)行代碼,否則什么也不做if(條件表達(dá)式){//條件成立執(zhí)行的代碼語(yǔ)句}3.分支流程控制if語(yǔ)句語(yǔ)句可以理解為一個(gè)行為,循環(huán)語(yǔ)句和分支語(yǔ)句就是典型的語(yǔ)句。一個(gè)程序由很多個(gè)語(yǔ)句組成,一般情況下,會(huì)分割成一個(gè)一個(gè)的語(yǔ)句。3.2if語(yǔ)句2.執(zhí)行流程3.分支流程控制if語(yǔ)句判斷條件truefalse執(zhí)行語(yǔ)句其他語(yǔ)句案例:進(jìn)入網(wǎng)吧彈出一個(gè)輸入框,要求用戶輸入
,如果
大于等于
18
歲,允許進(jìn)網(wǎng)吧。3.分支流程控制if語(yǔ)句案例分析①
彈出
prompt輸入框,用戶輸入 ,
程序把這個(gè)值取過(guò)來(lái)保存到變量中②
使用
if
語(yǔ)句來(lái)判斷
,如果
大于18就執(zhí)行
if
大括號(hào)里面的輸出語(yǔ)句3.分支流程控制if語(yǔ)句實(shí)現(xiàn)代碼:');var
usrAge=prompt('請(qǐng)輸入您的
if(usrAge>=18){alert('您的
合法,歡迎來(lái)天際網(wǎng)吧享受學(xué)習(xí)的樂趣!');}3.分支流程控制if語(yǔ)句3.3
if
else語(yǔ)句(雙分支語(yǔ)句)1.語(yǔ)法結(jié)構(gòu)//條件成立執(zhí)行if里面代碼,否則執(zhí)行else里面的代碼if(條件表達(dá)式){//[如果]條件成立執(zhí)行的代碼}
else
{//[否則]執(zhí)行的代碼}3.分支流程控制if語(yǔ)句3.3
if
else語(yǔ)句(雙分支語(yǔ)句)2.執(zhí)行流程3.分支流程控制if語(yǔ)句判斷條件執(zhí)行語(yǔ)句
1執(zhí)行語(yǔ)句
2truefalse其他語(yǔ)句3.分支流程控制if語(yǔ)句案例
2:判斷閏年接收用戶輸入的年份,如果是閏年就彈出閏年,否則彈出是平年案例分析①算法:能被4整除且不能整除100的為閏年(如2004年就是閏年,1901年不是閏年)或者能夠被400整除的就是閏年②彈出prompt輸入框,讓用戶輸入年份,把這個(gè)值取過(guò)來(lái)保存到變量中③使用if語(yǔ)句來(lái)判斷是否是閏年,如果是閏年,就執(zhí)行if大括號(hào)里面的輸出語(yǔ)句,否則就執(zhí)行else里面的輸出語(yǔ)句④一定要注意里面的且&&還有或者||的寫法,同時(shí)注意判斷整除的方法是取余為03.分支流程控制if語(yǔ)句if
(year%4==0
&&
year%100!=0
||
year%400==0){alert("這個(gè)年份是閏年");}else{//剩下的是平年alert("這個(gè)年份是平年");}3.分支流程控制if語(yǔ)句實(shí)現(xiàn)代碼3.分支流程控制if語(yǔ)句獨(dú)立完成案例:判斷是否接收用戶輸入的
,來(lái)判斷是否 ,
如果輸入的是,則提示中了5塊錢,
否則提示沒有
。案例分析①
彈出
prompt輸入框,讓用戶輸入
,把這個(gè)值取過(guò)來(lái)保存到變量中②
使用
if
語(yǔ)句來(lái)判斷是否存在這個(gè)
,如果存在,就執(zhí)行if
大括號(hào)里面的輸出語(yǔ)句,否則就執(zhí)行else里面的輸出語(yǔ)句③一定要注意判斷是否相等,用==或者===3.分支流程控制if語(yǔ)句3.分支流程控制if語(yǔ)句實(shí)現(xiàn)代碼//
算法
如果你叫
了,否則沒有//獲得用戶名var
username
=
prompt("請(qǐng)輸入您的
:");if(
username
==
" ")
{alert("恭喜發(fā)財(cái)");}
else
{alert("謝謝惠顧,歡迎下次再來(lái)");}3.4
if
else
if語(yǔ)句(多分支語(yǔ)句)1.語(yǔ)法結(jié)構(gòu)//適合于檢查多重條件。if(條件表達(dá)式1){語(yǔ)句1;}
else
if
(條件表達(dá)式2)
{語(yǔ)句2;}
else
if
(條件表達(dá)式3)
{語(yǔ)句3;....}
else{//上述條件都不成立執(zhí)行此處代碼}3.分支流程控制if語(yǔ)句3.4
if
else
if語(yǔ)句(多分支語(yǔ)句)2.執(zhí)行流程3.分支流程控制if語(yǔ)句條件表達(dá)式1執(zhí)行語(yǔ)句1條件表達(dá)式2執(zhí)行語(yǔ)句2條件表達(dá)式n執(zhí)行語(yǔ)句n其他語(yǔ)句truetruefalsefalse案例:判斷成績(jī)級(jí)別要求:接收用戶輸入的分?jǐn)?shù),根據(jù)分?jǐn)?shù)輸出對(duì)應(yīng)的等級(jí)字母A、B、C、D、E。其中:90分(含)以上,輸出:A80分(含)~
90分(不含),輸出:B70分(含)~
80分(不含),輸出:C60分(含)~
70分(不含),輸出:D60分(不含)以下,輸出:E3.分支流程控制if語(yǔ)句案例分析①按照從大到小判斷的思路②彈出prompt輸入框,讓用戶輸入分?jǐn)?shù),把這個(gè)值取過(guò)來(lái)保存到變量中③使用多分支ifelse
if語(yǔ)句來(lái)分別判斷輸出不同的值3.分支流程控制if語(yǔ)句var
score=prompt('請(qǐng)您輸入分?jǐn)?shù):');if(score>=90){alert('寶貝,你是
驕傲');}else
if(score>=80){
alert('寶貝,你已經(jīng)很出色了');}
else
if
(score
>=
70)
{alert('你要繼續(xù)加油嘍');}
else
if
(score
>=
60)
{alert('孩子,你很
');}
else{alert('熊孩子,我不想和你說(shuō)話,我只想用鞭子和你說(shuō)話');}3.分支流程控制if語(yǔ)句實(shí)現(xiàn)代碼Contents目流程控制順序流程控制分支流程控制if語(yǔ)句三元表達(dá)式分支流程控制switch語(yǔ)句4.三元表達(dá)式表達(dá)式1
?表達(dá)式2
:表達(dá)式3;執(zhí)行思路如果表達(dá)式1為true,則返回表達(dá)式2的值,如果表達(dá)式1為false,則返回表達(dá)式3的值簡(jiǎn)單理解:就類似于if
else(雙分支)的簡(jiǎn)寫三元表達(dá)式也能做一些簡(jiǎn)單的條件選擇。有三元運(yùn)算符組成的式子稱為三元表達(dá)式1.語(yǔ)法結(jié)構(gòu)4.三元表達(dá)式案例:數(shù)字補(bǔ)0用戶輸入數(shù)字,如果數(shù)字小于10,則面補(bǔ)0,比如01,09,如果數(shù)字大于10,則不需要補(bǔ),比如20。案例分析①用戶輸入0~59之間的一個(gè)數(shù)字②
如果數(shù)字小于10,則在這個(gè)數(shù)字前面補(bǔ)0,(加0)
否則
不
作③用一個(gè)變量接受這個(gè)返回值,輸出4.三元表達(dá)式var
time=prompt('請(qǐng)您輸入一個(gè)0
~
59
之間的一個(gè)數(shù)字');//三元表達(dá)式表達(dá)式?表達(dá)式1
:表達(dá)式2var
result=time<10?'0'+time:time;//把返回值賦值給一個(gè)變量alert(result);實(shí)現(xiàn)代碼4.三元表達(dá)式Contents目流程控制順序流程控制分支流程控制if語(yǔ)句三元表達(dá)式分支流程控制switch語(yǔ)句5.分支流程控制switch語(yǔ)句5.1語(yǔ)法結(jié)構(gòu)switch語(yǔ)句也是多分支語(yǔ)句,它用于基于不同的條件來(lái)執(zhí)行不同的代碼。當(dāng)要針對(duì)變量設(shè)置一系列的特定值的選項(xiàng)時(shí),就可以使用switch。switch(表達(dá)式){case
value1://表達(dá)式等于value1
時(shí)要執(zhí)行的代碼break;case
value2://表達(dá)式等于value2
時(shí)要執(zhí)行的代碼break;default://表達(dá)式不等于任何一個(gè)value
時(shí)要執(zhí)行的代碼}語(yǔ)法結(jié)構(gòu)switch:開關(guān)轉(zhuǎn)換,case:小例子選項(xiàng)關(guān)鍵字switch后面括號(hào)內(nèi)可以是表達(dá)式或值,通常是一個(gè)變量關(guān)鍵字case
,后跟一個(gè)選項(xiàng)的表達(dá)式或值,后面跟一個(gè)冒號(hào)switch表達(dá)式的值會(huì)與結(jié)構(gòu)中的case的值做比較如果存在匹配全等(===),則與該case關(guān)聯(lián)的代碼塊會(huì)被執(zhí)行,并在遇到break時(shí)停止,整個(gè)switch語(yǔ)句代碼執(zhí)行結(jié)束如果所有的case的值都和表達(dá)式的值不匹配,則執(zhí)行default里的代碼注意:執(zhí)行case里面的語(yǔ)句時(shí),如果沒有break,則繼續(xù)執(zhí)行下一個(gè)case里面的語(yǔ)句。5.分支流程控制switch語(yǔ)句案例:查詢水果用戶在彈出框里面輸入一個(gè)水果,如果有就彈出該水果的價(jià)格,如果沒有該水果就彈出“沒有此水果”。5.分支流程控制switch語(yǔ)句5.分支流程控制switch語(yǔ)句案例分析①?gòu)棾鰌rompt輸入框,讓用戶輸入水果名稱,把這個(gè)值取過(guò)來(lái)保存到變量中。②將這個(gè)變量作為switch括號(hào)里面的表達(dá)式。③case后面的值寫幾個(gè)不同的水果名稱,注意一定要加引號(hào),因?yàn)楸仨毷侨绕ヅ?。④彈出不同價(jià)格即可。同樣注意每個(gè)case之后加上break,以便退出switch語(yǔ)句。⑤將default設(shè)置為沒有此水果。var
fruit=prompt('請(qǐng)您輸入查詢的水果:');
switch
(fruit){case'蘋果':alert('蘋果的價(jià)格是3.5/斤');break;case'榴蓮':alert('榴蓮的價(jià)格是35/斤');break;default:alert('沒有此水果');}實(shí)現(xiàn)代碼5.分支流程控制switch語(yǔ)句5.2
switch語(yǔ)句和if
else
if語(yǔ)句的區(qū)別①一般情況下,它們兩個(gè)語(yǔ)句可以相互替換②switch...case語(yǔ)句通常處理case為比較確定值的情況,而if…else…語(yǔ)句更加靈活,常用于范圍判斷(大于、等于某個(gè)范圍)③switch語(yǔ)句進(jìn)行條件判斷后直接執(zhí)行到程序的條件語(yǔ)句,效率更高。而if…else語(yǔ)句有幾種條件
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 提高響應(yīng)速度與客戶滿意度計(jì)劃
- 探秘小宇宙幼兒園教學(xué)工作計(jì)劃文檔
- 寓教于樂的品牌推廣方法計(jì)劃
- 2025年獨(dú)立運(yùn)行風(fēng)力發(fā)電機(jī)組控制器及逆變器項(xiàng)目合作計(jì)劃書
- 會(huì)議紀(jì)要與決策執(zhí)行要點(diǎn)梳理
- 2025年體外診斷儀器產(chǎn)品項(xiàng)目合作計(jì)劃書
- 辦公室日常行為規(guī)范及規(guī)章制度解讀
- Zinc-sulfide-生命科學(xué)試劑-MCE
- racemic-Dunnione-SL-11010-生命科學(xué)試劑-MCE
- 新員工入職流程與職責(zé)說(shuō)明
- 新川教版信息技術(shù)六年級(jí)下冊(cè)全冊(cè)教案
- 第20章補(bǔ)充芯片粘接技術(shù)
- 綜合性學(xué)習(xí)公開課《我的語(yǔ)文生活》一等獎(jiǎng)?wù)n件
- 旅行社運(yùn)營(yíng)實(shí)務(wù)電子課件 5.1 旅行社電子商務(wù)概念
- IBM:中建八局ERP解決方案
- 高考語(yǔ)文復(fù)習(xí)高中語(yǔ)文文言文注釋集萃
- 初中歷史 教材分析與教學(xué)策略 課件
- (完整word版)手卡模板
- GB/T 23115-2008乒乓球拍
- 小學(xué)英語(yǔ)外研版(三起點(diǎn))五年級(jí)下冊(cè)全冊(cè)課文翻譯(1-10模塊)
- 統(tǒng)編教學(xué)小學(xué)語(yǔ)文課外閱讀《細(xì)菌世界歷險(xiǎn)記》導(dǎo)讀課課件
評(píng)論
0/150
提交評(píng)論