[TOC] >[info]流程:就是程序代码的执行顺序,流程控制:通过规定的语句让程序代码有条件的执行,改变程序运行顺序。 1. 顺序结构:按照书写顺序来执行,是程序中最基本的流程结构。 2. 选择结构(分支结构、条件结构):根据给定的条件有选择的执行相应的语句 3. 循环结构:在给定的条件满足的情况下,反复的执行同一段代码。 ## If...Else(选择结构) >[info]条件语句用于基于不同的条件来执行不同的动作。通常在写代码时,您总是需要为不同的决定来执行不同的动作。您可以在代码中使用条件语句来完成该任务。 在 JavaScript 中,我们可使用以下条件语句: 1. if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码。 2. if...else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码。 3. if...else if....else 语句 - 使用该语句来选择多个代码块之一来执行。 4. switch 语句 - 使用该语句来选择多个代码块之一来执行。 **例1** ~~~ <script type="text/javascript"> if (条件){ 只有当条件为 true 时执行的代码 } </script> ~~~ **例2** ~~~ <script type="text/javascript"> if (条件){ 当条件为 true 时执行的代码 }else{ 当条件不为 true 时执行的代码 } </script> ~~~ **例3** ~~~ <script type="text/javascript"> if (条件 1){ 当条件 1 为 true 时执行的代码 }else if (条件 2){ 当条件 2 为 true 时执行的代码 }else{ 当条件 1 和 条件 2 都不为 true 时执行的代码 } </script> ~~~ **例4** ~~~ <script type="text/javascript"> switch(n){ case 1: 执行代码块 1 break; case 2: 执行代码块 2 break; default: n 与 case 1 和 case 2 不同时执行的代码 } </script> ~~~ ## 循环 >[info]循环可以将代码块执行指定的次数。如果您希望一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的。 **我们可以这样输出数组的值:** ~~~ document.write(cars[0] + ""); document.write(cars[1] + ""); document.write(cars[2] + ""); document.write(cars[3] + ""); document.write(cars[4] + ""); document.write(cars[5] + ""); ~~~ **不过通常我们这样写** ~~~ for (var i = 10; i >= 0; i--) { document.write(i); }; ~~~ ** 循环结构:** 1. for - 循环代码块一定的次数 2. for/in - 循环遍历对象的属性 3. while - 当指定的条件为 true 时循环指定的代码块 4. do/while - 同样当指定的条件为 true 时循环指定的代码块 ### For 循环 >[info]for 循环是您在希望创建循环时常会用到的工具。 **下面是 for 循环的语法:** ~~~ for (语句 1; 语句 2; 语句 3){ 被执行的代码块 } ~~~ * 语句 1 在循环(代码块)开始前执行 * 语句 2 定义运行循环(代码块)的条件 * 语句 3 在循环(代码块)已被执行之后执行 ### For/In 循环 >[info]JavaScript for/in 语句循环遍历对象的属性: ~~~ var person={fname:"John",lname:"Doe",age:25}; for (x in person){ txt=txt + person[x]; } ~~~ ### While 循环 >[info]只要指定条件为 true,循环就可以一直执行代码。 ~~~ while (条件){ 需要执行的代码 } ~~~ ### do/while 循环 >[info]do/while 循环是 while 循环的变体。该循环会执行一次代码块,在检查条件是否为真之前,然后如果条件为真的话,就会重复这个循环。 ~~~ do{ 需要执行的代码 }while (条件); ~~~ ### Break 和 Continue 语句 >[info]在循环控制语句中,当满足指定条件的时候,退出循环或者是退出 当前循环的语句。 * break 语句用于跳出循环。 * continue 用于跳过循环中的一个迭代。 >[danger]**作业:**通过学习了循环,输出一个九九乘法表。或者金字塔。 ![](https://box.kancloud.cn/9076be8f435b07e1df15e86f89c654e9_669x298.png)