循环结构

1、while循环

(1)循环结构

while(条件语句) {
     
      循环体 : 重复执行的代码
     }

条件语句可以是关系表达式、布尔类型的值、其他类型的值 (都会转换成布尔类型)

(2)结构解析
判断条件是否成立, 如果成立, 执行循环体代码, 重复判断条件是否成立;如果不成立, 跳出循环, 执行大括号之后的代码。

 var num = 0;
 while(num < 10) {
     
      console.log("hello  world!");
       num++;   // 千万不能忘, 忘了就是死循环
      }
    console.log("我运行完了");

这样就打印了10遍hello world。
注意点
1.循环变量 循环条件 循环变量的自增或者自减 都必须有
2. 循环变量自增或者自减一定不能忘

2、do while循环

(1)循环结构

 do {
     
     循环体 : 条件成立时重复执行的代码
} while (判断条件);

条件语句可以是关系表达式、布尔类型的值、其他类型的值 (都会转换成布尔类型)。
(2)结构解析
先无条件执行一遍循环体, 然后再判断, 如果条件成立, 就重复执行循环体代码,直到条件不成立。

//需求:用户名 : admin  密码 : 123456

do {
     
      var userName = prompt("请输入用户名");
      var password = prompt("请输入密码"); 
   } while(userName != "admin" || password != "123456");

注意点
1.循环变量 循环条件 循环变量的自增或者自减 都必须有
2. 循环变量自增或者自减一定不能忘

3、for循环

(1)循环结构

for(语句1 ; 语句2 ; 语句3) {
     
            循环体 : 条件成立时重复执行的代码
       }

语句1 : 声明一个变量, 来记录循环次数, 叫做循环变量;
语句2 : 判断条件(通常是条件表达式), 他是用来控制循环的结束还是继续;
语句3 : 通常都是循环变量的自增或者自减。
(2)结构解析
先执行语句1(声明循环变量),再执行语句2, 判断条件是否成立(如果成立 执行循环体代码,循环变量自增, 重复执行语句2;如果不成立, 就跳出循环, 执行大括号外面的代码)。

 // 需求 : 打印10次"hello world ""
for(var i = 0; i < 10;  i++;) {
     
    console.log("hello world");  
   }

注意点
1. 小括号里面的语句都可以省略, 但是分号不能省略, 三个语句都省略了, 就变成死循环了;
2. 循环变量的定义可以提到循环外;
3. 循环变量自增可以写在循环体里面。

三种循环结构的适用场景

while : 适用于循环次数不固定的场景
do-while : 适用于循环次数不固定的场景, 但是循环体代码必须无条件执行一次
for : 适用于循环次数固定的场景

循环的嵌套

也就是一个循环套着一个循环。
循环嵌套中, 我们要找到外层循环变量和内存循环变量之间的关系
外层循环决定行, 内层循环决定列。
比如:

 /*需求;打印下面的图案:
        * * * * 
        * * * * 
        * * * * 
        * * * *  
        */
        // 外层循环  决定多少行
        for(var i = 0; i < 4; i++) {
     
            // 内层循环
            for(var j = 0; j < 4; j++) {
     
                document.write("* ");
            }
            document.write("
"
) }

break与continue的区别

最后再提一下break与continue的区别:
break :
1.适用范围 : 只能用于switch语句和循环语句里。
2.作用 : switch里面结束switch语句;循化里面结束当前循环语句。
continue :
1.使用范围 : 只能用于循环语句
2.作用 : 结束当前这次循环, 直接进行下一轮循环
continue使用注意 : continue结束本次循环, 本次循环里, continue以后的语句都不执行

你可能感兴趣的:(循环结构)