三、双重for循环
很多情况下,单层for循环并不能满足我们的需求,循环嵌套是指在一个循环语句中在定义一个循环语句的语法结构,列如在for循环语句中,可以再嵌套一个for循环,这样的循环语句我们称之为双重for循环。
外层循环一次,里面循环执行全部
for(var i=1; i<=3; i++){//外循环 document.write('外循环' + i + '次' + '<br>') for(var j=1; j<=3; j++){//里循环 document.write('里循环' + j + '次' + '<br>') } }
双重for循环案例
要求:用双重for循环打印九九乘法表。
核心算法:每一行公试的个数正好和行数一致。
for(var i=1; i<=9; i++){ for(var j=1; j<=i; j++){ var ji=j*i; if(ji<10){ ji="0"+ji; document.write(j + "×" + i + "=" + ji + " ") }else{ document.write(j + "×" + i + "=" + i*j + " ") } } document.write("<br/>") }
要举一反三,自己经常总结,做一些相似的案例。
四、while循环
while语句可以在条件表达式为真的前提下,循环执行指定的一段代码,直到表达式为不真时结束循环。while语句的语法如下:
当条件表达式结果为真(true)时执行代码否则退出循环
while(条件表达式){ 循环体代码 } var num=1 while(num<=100){ console.log('执行')//会一直执行 , 死循环 //加入 num++ 就不会死循环了 //num++ }
while循环也是可以使用 if与else if 语句的
var i=1; var num=0; while(i<=100){ if(i%3==0 && i%7==0 && i%2==0){ document.write(i + "<br/>") num++ } i++ } document.write(num + "个数符合条件")
while循环案例
要求:弹出一个提示框,你关注我了吗? 如果输入关注了则提示结束,否则一直询问
var a=prompt('你关注我了吗') while(a!=="关注了"){ var a=prompt('你关注我了吗') } alert("爱你!")
五、do while循环
do while语句其实是while语句的一个变体,该循环会先执行代码块,然后对条件表达式进行判断,如果条件为真,就会重复执行循环体,否则退出。
do{ 循环体 }while(条件表达式) var i=1; do{ document.wrte("点关注不迷路") i++ }while(i<=10)
do while循环案例
要求:输入的账户必须为ad,密码必须为123456,否则一直提示登陆弹框
var a= prompt("请你输入用户名"); var b= prompt("请你输入密码"); while(a!=="ad" || b!== "123456"){ alert("请输入正确的用户名和密码"); a= prompt("请你输入用户名"); b= prompt("请你输入密码"); } alert("成功登陆!")
六、 continue与break
1.continue
continue 关键字用于立即跳出本次循环,继续下一次循环。
for(var i=1; i<=10; i++){ if(i==3 || i==7 || i==9){ continue; } document.write(i + "<br/>") } document.write("完毕")
2.break
break关键字用于立即跳出整个循环(循环结束)
for(var i=1; i<=10; i++){ if(i==3){ break } document.write(i + "<br/>") } document.write("完毕")
循环练习
用for循环输出一个*号的正三角型和倒三角型
自己做一遍效果更好哦
document.write("<p align='center'>") for(var i=1; i<=9; i++){ for(var j=1; j<=i; j++){ document.write(" " + "*" + " ") } document.write("<br/>") } document.write("</p>") document.write("<hr>") document.write("<p align='center'>") for(var i=1; i<=9; i++){ for(var j=9; j>=i; j--){ document.write(" " + "*" + " ") } document.write("<br/>") } document.write("</p>")
客官都看到这了就给小的: