您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)JavaScript程序循環(huán)結(jié)構(gòu)是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
單分支的if結(jié)構(gòu)
if(條件){ 條件滿足后執(zhí)行的代碼 }
如果大括號(hào)中只有一條語(yǔ)句,此時(shí)可以省略大括號(hào),但是強(qiáng)烈不建議這樣寫(xiě)
if(條件) console.log('點(diǎn)點(diǎn)點(diǎn)')
二分支if結(jié)構(gòu)語(yǔ)句
if (條件){ 條件滿足后執(zhí)行的代碼 } else{ 條件不滿足后執(zhí)行的代碼 }
多分支if結(jié)構(gòu)語(yǔ)句
if(條件1){ 代碼1 } else if(條件2){ 代碼2 } ...... else{ 以上條件都不滿足執(zhí)行的代碼 }
switch結(jié)構(gòu)
var today=1 switch(today){ case 1: console.log('工作日') break case 2: console.log('工作日') break case 3: case 4: case 5: console.log('工作日') break default console.log('休息日') break
switch和if得區(qū)別
switch 只能進(jìn)行等值得判斷if
沒(méi)有限制適合某個(gè)連續(xù)區(qū)間得判斷
重復(fù)性的執(zhí)行某個(gè)操作就是循環(huán)
//循環(huán)10次 var i=1 while(i<=10){ console.log('111111') i++ } //案例:計(jì)算100以內(nèi)整數(shù)之和 var i=1 var sum = 0 while(i<=100){ sum+=i i++ }
案例 在頁(yè)面輸出[1,200]之間所有能被7整除,但不能被4整除的所有整數(shù),并統(tǒng)計(jì)個(gè)數(shù),同時(shí)要求輸出每行顯示5個(gè) var i=1 var count = 0 while(i<=200){ if(i%7==0 && i%4!=0){ document.write(i+" ") count++;//統(tǒng)計(jì)個(gè)數(shù) // 判斷每輸出5個(gè)換一行 if(count%5==0){ document..write('<br>'); } } i++; document.write('<br>共計(jì): '+count+'個(gè)')
先執(zhí)行代碼,再判斷條件
var i=1; do{ console.log('好好學(xué)習(xí),天天向上!') i++; }while(i<=10) #案例 #計(jì)算1-50之間得倍數(shù) <script type="text/javascript"> var i=1; var sum=0; do{ if(i%6==0){ sum+=i } i++; }while(i<=50) console.log(sum) </script> #案例 # 循環(huán)提示用戶輸入5個(gè)數(shù),按q結(jié)束,然后輸出其中最大值和最小值 #先提示用戶輸入一次,然后將該數(shù)字作為最大值和最小值 var num=Number(prompt('請(qǐng)輸入一個(gè)征屬(按q結(jié)束):')) var max=num; var min=num; var flag=true //標(biāo)識(shí)是否繼續(xù)循環(huán) var i = 1; do{ var num=Number(promot('請(qǐng)輸入一個(gè)整數(shù)!')) #判斷用戶是否輸入q if(num=='q'){ flag=false //如果輸入q則將flag改為false,表示停止循環(huán) }else{ num=Number(num) if(num>max){ max=num; } if (num<min){ min=num } }while(flag) console.log(max) console.log(min)
語(yǔ)法
for(初始化:條件:迭代){ 代碼塊 }
循環(huán)開(kāi)始時(shí)先執(zhí)行初始化部分,而且初始化部分只執(zhí)行一次
初始化執(zhí)行完之后就去判斷條件是否成立,如果成立則執(zhí)行代碼塊,然后執(zhí)行迭代部分
對(duì)集合數(shù)據(jù)進(jìn)行遍歷
循環(huán)遍歷是遍歷到的數(shù)據(jù)在集合中的索引順序(從0開(kāi)始),而非數(shù)據(jù)本身
<script type="text/javascript"> var str = 'abc' for(var index in str){ console.log(index,str[index]) } </script>
對(duì)集合數(shù)據(jù)進(jìn)行迭代遍歷
這是直接拿到值
<script type="text/javascript"> var str = 'abc' for(var index of str){ console.log(index) } </script>
循環(huán)次數(shù)確定時(shí)一般使用for
循環(huán)次數(shù)不確定時(shí)一般使用while和do…while
對(duì)集合進(jìn)行遍歷時(shí)使用 for…in和for…of
break跳出整個(gè)循環(huán),終止循環(huán)的執(zhí)行
案例
//當(dāng)1-20之間整數(shù)相加,當(dāng)累加值大于66時(shí)停止相加,輸出當(dāng)前整數(shù)和累加值 var sum=0 for(var i=1;i<=20;i++){ sum+=1 if(sum>66){ break } }
跳出本次循環(huán),執(zhí)行下一次循環(huán),本次循環(huán)尚未執(zhí)行完
//計(jì)算1-10之間所有偶數(shù)和 var sum=0; for(var i=1;i<=10;i++){ if(i%2!=0){ continue } sum+=i }
一個(gè)循環(huán)嵌套著另一個(gè)循環(huán),成為二重循環(huán),各種循環(huán)可以相互嵌套
外層循環(huán)變量變化一次,內(nèi)層循環(huán)執(zhí)行一邊
//案例 //某次程序大賽,共有三個(gè)班級(jí)參加,每個(gè)班級(jí)4名學(xué)生,輸入各班級(jí)每個(gè)學(xué)生成績(jī),然后計(jì)算各班級(jí)平均分 for(var i=1;i<=3;i++){ alert('請(qǐng)輸入第'+i+'個(gè)班級(jí)學(xué)生信息---') //內(nèi)層循環(huán)控制班級(jí)學(xué)生數(shù)量 var sum=0 for(var j=1;j<=4;j++){ var score=Number(prompt('請(qǐng)輸入第'+j+'個(gè)學(xué)生成績(jī):')) sum+=score; } console.log('第'+i+'個(gè)班級(jí)平均分為:'+sum/4) }
<script type="text/javascript"> for(var i=1;i<=9;i++){ for(var j=1;j<=i;j++){ document.write(j+'*'+i+'='+i*j+'  ') } document.write('<br>') } </script>
看完上述內(nèi)容,你們對(duì)JavaScript程序循環(huán)結(jié)構(gòu)是什么有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。