前端---js(自学笔记8)(while循环)

    技术2023-11-14  74

    while循环:

    循环语句是可以将一段代码循环执行。

    while循环:首先对条件表达式进行判断,如果为true则执行代码块,然后再次进行判断,如果还是true,将再次执行,直到条件表达式为false,循环结束。 

    语法: while(条件表达式){           语句... }

    do...while循环:首先执行一遍语句,在进行条件表达式的判断,如果为true则继续执行,如果为false,则执行完语句,终止循环。

    语法: do{ 语句... }while(条件表达式)

    while 和 do while 功能类似,不同之处,while是先判断在执行,do...while是先执行,后判断。如果条件表达式不满足时,do...while至少执行完毕了一次,而while则不执行。

    while小练习:

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>while 练习</title> <script type="text/javascript"> // 假如投资的年利率为5%,试求从1000块增长到5000块,需要花费多少年 var m =1000; var count =0; while(m<=5000){ m *=1.05 count++ } alert("花费多少年:"+count) </script> </head> <body> </body> </html>

     结果:

    while和switch 

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>if与while 练习题</title> <!--输出小白成绩 当成绩为100,'奖励一辆车模型' 当成绩为[80-90],'奖励一台手机' 当成绩为[60-80],'奖励一本书' 其他时,'没有奖励'--> <script type="text/javascript"> while (true){ var score =prompt("输入成绩(0-100):"); if (0<score && score<100){ break; } alert("请输入正确的值:") } if (score>100 || score<0 || isNaN(score)){ alert('不属于范围之内') }else{ if(score==100){ alert('奖励一辆车模型') }else if(score>80 && score <=99){ alert('奖励一台手机') }else if(score>60 && score<= 80){ alert('奖励一台手机') }else{ alert('没有奖励') } } </script> </head> <body> </body> </html>

    结果:

    for循环:

    for循环,为我们提供了位置专门放置三个表达式:1.初始化表达式,2.条件表达式,3.更新表达式

    for循环语法 for(初始化表达式;条件表达式;更新表达式){ 语句... } for(a=0;a<10;a++){ alert(a); } 对比while 1.初始化表达式 var a =0; 2.创建循环,定义条件表达式 while(a<10){ 3.更新表达式 alert(a++) }

    for循环执行流程:

    先执行初始化表达式,再执行条件表达式如果条件表达式true,则执行更新表达式,执行完毕后,如果还满足条件表达式,则在重复执行。直到不满足条件表达式为止。如果条件表达式为false,则直接跳出循环。

    for循环()里可以省略不写表达式,也可以写在外部表达式。如果for(;;)没有表达式,只有俩个分号,则为死循环,慎用。

     for练习题:

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>for</title> <script type="text/javascript"> // 打印1-100之间所有7的倍数的个数及总和 var sum = 0; var count=0; for(b=1;b<100;b++){ if(b % 7 == 0){ sum += b; count++; } } console.log(sum); console.log(count); </script> </head> <body> </body> </html>

    结果:

    <!DOCTYPE html> <html> <head> <meta charset="{CHARSET}"> <title>for循环</title> <script type="text/javascript"> var sum =0; // 打印1-100之间的所有奇数之和 for(a=1;a<100;a++){ if (a%2 !=0){ sum =sum +a } } alert(sum); </script> </head> <body> </body> </html>

    结果:

    <!DOCTYPE html> <html> <head> <meta charset="{CHARSET}"> <title>for循环</title> <script type="text/javascript"> // 水仙花数是指一个3位数,它的每个位上的数字的3次幂之和等于它本身, // (例如:1^3+5^3+3^3 =153),请打印所有的水仙花数. for(a=100;a<1000;a++){ //获取百位上的数字 var bai =parseInt(a/100); //获取十位上的数字 var shi =parseInt((a-bai*100)/10); // 获取个位上的数字 var ge = a%10; if(bai*bai*bai +shi*shi*shi+ge*ge*ge==a){ console.log(a); } } </script> </head> <body> </body> </html>

    结果:

     

    Processed: 0.014, SQL: 9