06 JavaScript中的流程控制之循環(huán)結(jié)構(gòu)

技術(shù)交流QQ群:1027579432,歡迎你的加入拱烁!

歡迎關(guān)注我的微信公眾號:CurryCoder的程序人生

1.循環(huán)結(jié)構(gòu)

  • 循環(huán)的目的:在實際問題中生蚁,有很多規(guī)律性的重復(fù)操作。因此戏自,在程序中要完成這類操作邦投,就需要重復(fù)執(zhí)行某些語句

2.JS中的循環(huán)

  • 在JS中主要有三種類型的循環(huán)語句:
    • for循環(huán)
    • while循環(huán)
    • do-while循環(huán)
for循環(huán)
  • 在程序中擅笔,一組被重復(fù)執(zhí)行的語句被稱為循環(huán)體志衣,能否繼續(xù)重復(fù)執(zhí)行,取決于循環(huán)的終止條件猛们。由循環(huán)體及循環(huán)的終止條件組成的語句念脯,被稱為循環(huán)語句
  • 語法結(jié)構(gòu)
    • for循環(huán)主要用于把某些代碼循環(huán)若干次弯淘,通常與計數(shù)有關(guān)绿店,語法結(jié)構(gòu)如下:
    for (初始化變量; 條件表達式; 操作表達式) {
        // 循環(huán)體
    }
    
  • 斷點調(diào)試
    • 斷點調(diào)試是指自己在程序的某一行設(shè)置一個斷點。調(diào)試時,程序運動到這一行就停止假勿,然后你可以一步一步往下調(diào)試借嗽,調(diào)試過程可以看每個變量當(dāng)前的值。出錯的話转培,調(diào)試到出錯的代碼行即顯示錯誤恶导,停止程序運行。
    • 瀏覽器中按下F12堡距,之后再找到Sources甲锡,找到需要可以監(jiān)視變量的值的變化
    • F11:程序單步執(zhí)行羽戒,讓程序一行一行的執(zhí)行缤沦,這個時候,觀察Watch中變量的值變化易稠。

3.雙重for循環(huán)

  • 很多情況下缸废,單層for循環(huán)并不能滿足我們的需求,例如需要打印出5*5的圖形驶社,打印一個倒直角三角性等企量,此時就可以通過嵌套來實現(xiàn)。
  • 嵌套循環(huán):是指一個循環(huán)語句中再定義一個循環(huán)語句的語法結(jié)構(gòu)亡电,例如在for循環(huán)中可以再嵌套一個for循環(huán)届巩,這樣的for循環(huán)語句我們稱為雙重for循環(huán)
  • 雙重for循環(huán)的語法結(jié)構(gòu):
    for (外層的初始化變量; 外層的條件表達式; 外層的操作表達式){
        for (里層的初始化變量; 里層的條件表達式; 里層的操作表達式) {
            // 操作語句;
        }
    }
    
  • 可以把里層的循環(huán)看成是外層循環(huán)的語句份乒。
  • 外層循環(huán)執(zhí)行一次恕汇,里層的循環(huán)執(zhí)行全部。

4.for循環(huán)總結(jié)

  • for循環(huán)可以重復(fù)執(zhí)行某些相同的代碼或辖;
  • for循環(huán)可以重復(fù)執(zhí)行一些不同的代碼瘾英,因為有計數(shù)器的存在;
  • for循環(huán)可以重復(fù)執(zhí)行某些操作颂暇,例如算術(shù)運算符缺谴、加法操作;
  • 雙層for循環(huán)耳鸯,外層循環(huán)執(zhí)行一次湿蛔,內(nèi)層for循環(huán)執(zhí)行全部;
  • for循環(huán)是循環(huán)條件和數(shù)字直接相關(guān)的循環(huán)县爬;

5.while循環(huán)

  • while語句可以在條件表達式為真的前提下煌集,循環(huán)執(zhí)行特定的一段代碼,直到表達式不為真時結(jié)束循環(huán)捌省。
  • while語句的語法結(jié)構(gòu)如下:
    while (條件表達式) {
        // 循環(huán)體代碼
    }
    

6.do-while循環(huán)

  • do-while循環(huán)實際上是while循環(huán)語句的一個變體,該循環(huán)會先執(zhí)行一次代碼塊碉钠,然后對條件表達式進行判斷纲缓,如果條件為真卷拘,則會重復(fù)執(zhí)行循環(huán)體,否則退出循環(huán)祝高。
  • 語法結(jié)構(gòu):
    do {
        // 循環(huán)體
    } while (條件表達式)
    
  • 先執(zhí)行循環(huán)體栗弟,再判斷。因此工闺,do-while循環(huán)體至少執(zhí)行一次乍赫!

7.循環(huán)的總結(jié)

  • JS中的循環(huán)有for、while陆蟆、do-while雷厂;
  • 三個循環(huán)很多情況下都可以相互替換使用;
  • 如果是用來計次數(shù)的叠殷,與數(shù)字相關(guān)的改鲫,三者使用基本相同,但更偏愛使用for循環(huán)林束;
  • while和do-while循環(huán)可以用來做更復(fù)雜的判斷條件像棘,比for循環(huán)更加靈活;
  • while和do-while執(zhí)行的順序不一樣壶冒,while是先判斷后執(zhí)行缕题,do-while是先執(zhí)行一次,再判斷執(zhí)行胖腾;
  • while和do-while執(zhí)行的次數(shù)不一樣烟零,do-while的循環(huán)體至少會被執(zhí)行一次,而while的循環(huán)體可能一次也不執(zhí)行胸嘁;

8.continue和break關(guān)鍵字

  • continue關(guān)鍵字是用于立即跳出本次循環(huán)瓶摆,繼續(xù)下一次循環(huán),本次循環(huán)體中continue之后的代碼會少執(zhí)行一次性宏。
  • break關(guān)鍵字用于立即跳出整個循環(huán)群井,循環(huán)立即結(jié)束。

9.JS中的命名規(guī)范及語法格式

  • 標(biāo)識符命名規(guī)范
    • 函數(shù)名毫胜、變量名的命名必須要有意義书斜;
    • 變量的名稱一般用名詞;
    • 函數(shù)的名稱一般用動詞酵使;
  • 操作符規(guī)范
    // 操作符的左右兩側(cè)各保留一個空格
    for (var i = 1; i <= 5; i++) {
        if (i === 3) {
            break;
        }
        console.log('我正在吃第' + i + '個包子.');
    }
    
  • 單行注釋規(guī)范
    for (var i = 1; i <= 5; i++) {
        if (i === 3) {
            break;  // 單行注釋前面注意有個空格
        }
        console.log('我正在吃第' + i + '個包子.');
    }
    
  • 其他規(guī)范
    if (true) {  // 注意括號左右各留有一個空格
        
    }
    
    for (var i = 1; i <= 100; i++) {
        
    }
    

10.資料下載

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市口渔,隨后出現(xiàn)的幾起案子样屠,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痪欲,死亡現(xiàn)場離奇詭異悦穿,居然都是意外死亡,警方通過查閱死者的電腦和手機业踢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門栗柒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人知举,你說我怎么就攤上這事瞬沦。” “怎么了雇锡?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵逛钻,是天一觀的道長。 經(jīng)常有香客問我遮糖,道長绣的,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任欲账,我火速辦了婚禮屡江,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赛不。我一直安慰自己惩嘉,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布踢故。 她就那樣靜靜地躺著文黎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪殿较。 梳的紋絲不亂的頭發(fā)上耸峭,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天,我揣著相機與錄音淋纲,去河邊找鬼劳闹。 笑死,一個胖子當(dāng)著我的面吹牛洽瞬,可吹牛的內(nèi)容都是我干的本涕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼伙窃,長吁一口氣:“原來是場噩夢啊……” “哼菩颖!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起为障,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤晦闰,失蹤者是張志新(化名)和其女友劉穎放祟,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鹅髓,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡舞竿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了窿冯。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡确徙,死狀恐怖醒串,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情鄙皇,我是刑警寧澤芜赌,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站伴逸,受9級特大地震影響缠沈,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜错蝴,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一洲愤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧顷锰,春花似錦柬赐、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至束世,卻和暖如春酝陈,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背毁涉。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工沉帮, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人薪丁。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓遇西,卻偏偏與公主長得像,于是被迫代替她去往敵國和親严嗜。 傳聞我的和親對象是個殘疾皇子粱檀,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容