前言
本文讲解了javascript的循环,如果觉得对你有帮助请关注小编,你的支持就是我更新的动力!
本文学习目标
1.可以说出循环的目的。
2.能够说出for循环的执行过程。
3.能够使用断点调试来观察代码的执行过程。
4.能够使用for循环完成累加求和等案例。
5.能够使用for循环完成乘法表案例。
6.能够说出while循环跟do while循环的区别。
7.能够说出break和 continue的区别。
提示:以下是本篇文章正文内容
一、循环
1.循环的目的:
在没有学习循环时想在控制台打印:白嫖不是一个好习惯,我们只能,连续写三个代码,非常麻烦!
循环就会解决这个问题,所以循环就是为了避免重复执行某些语句。
不循环:
console.log('白嫖不是一个好习惯')
console.log('白嫖不是一个好习惯')
console.log('白嫖不是一个好习惯')
循环:
for(var i=1; 1<=3; i++){
//初始化变量 第一个i为循环的起始值 第二个i为循环的终止值 i++操作表达式,三步缺一不可!
console.log('点赞 关注 评论!')
}
2.JS中的循环
(1)for循环
(2)while循环
(3)do while循环
二、for循环
在程序中,一组被重复执行的语句被称为循环体,能否继续重复执行,取决与终止的条件。由循环体及循环的终止条件组成的语句,被称之为循环语句。
1.语法结构
for循环主要用于把某些代码循环若干次,通常与计数有关系。
for(初始化变量;条件表达式;操作表达式){
循环体
}
for(var i=1; 1<=100 i++){
//会循环100次
//初始化变量 第一个i为循环的起始值 第二个i为循环的终止值 i++操作表达式,三步缺一不可!
console.log('点赞 关注 评论!')//循环体
}
2.for循环重复不相同的代码
因为有计数器变量 i 的存在 i每次循环值都会变化。
for(var i=1; i<=3; i++){
document.write('今年我' + i + '岁了' + '<br/>')
}
运行结果:
for循环中是可以使用 if与else if 语句的;
for(var i=1; i<=3; i++){
if(i==1){
document.write( i+ '今年我出生了')
}else if(i==2){
document.write(i+ '今年我2岁了')
}else{
document.write(i+ '英年早逝')
}
}
3. for循环案例
要求,求1-100之间所有整数的和。
var sum=0;//我们需要一个储存结果的变量 sum ,初始值一定是0;
for(var i=1; i<=100; i++){
sum+=i;//sum = sum+i
}
document.write(sum)//结果为5050
要求,求1-100之间能被3整除的数的和
var sum=0;
for(var i=1; i<=100; i++){
if(i%3==0){
sum+=i;//sum = sum+i
}
}
document.write(sum)//结果为1683
三、双重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>")
客官都看到这了就给小的: