1.循环的概念和意义
***
循环的意义:
计算机是个傻子,没有七情六欲,不会有人类的感性和思考。当你问他爱吃啥,他不知道,当问他喜欢什么颜色,也不知道。那我们要计算机干啥呢?
从远古时期讲,所谓计算机并没有现在这个牛的功能,游戏电影,都是不可能的。只能干一件事:计算。那么什么是计算呢,为什么不自己计算呢?
所谓计算,就是数据的累加,比如1jia到100,这些累加都是重复性的工作,当人处理这些重复性的工作时,速度有限,但是计算机处理起来奇快无比,这就是计算机的价值所在。
发展到今天也是一样,当我们需要计算机的时候,大多数让他干的都是重复性的工作,这些重复性的工作有着极其相似的代码
比如,打印10次“hello world”;
document.write("hello world");
document.write("hello world");
document.write("hello world”);
…………
对于我们来说这样费时费力,同时也会有很多的代码冗余,那么这个时候我们应该使用的就是js中的循环。
当然我们也可以不用循环,但是我们要是打印100次hello world呢?
循环的意义
:
解决冗余代码
节省了输入代码的时间
并没有提升代码的执行速度,反而降低了点
2.while循环和do-while循环的使用
循环语句有哪些:
while(){}
while语句名
()执行条件:为true时,执行循环体,false时停止循环
{}循环体
demo:
注意:这是一个死循环,请慎重
var a = 5;
while(a < 10){
console.log("hello");
}
注意:除非是刻意的,否则千万不要造成死循环
循环三要素:
1.计数器:记录循环执行的次数
2.停止条件:决定什么时候停止
3.计数器一定要改变
do{}while(){}
do语句名1
{}循环体1
while语句名2
()条件:为true时,执行do后的循环体;false时执行的是while后的循环体
{}循环体2
demo:
var i = 0;
do{
console.log("这是do的语句---" + i);
i++;
}while(i < 10){
console.log("这是while的语句---" + i);
}
while和do-while的区别?
do-while无论结果为真还是为假,都会执行一次
永远比while多执行一次
3.for循环的使用
for(){}
for语句名
()条件组
{}循环体
demo:
1 2 3
for(var i=0;i<10;i++){
// 4
console.log(i);
}
1 2 4 3 2 4 3 2 4 3…
注意在for循环中语句之间用“;”隔开。
小技巧:在知道执行次数时用for,在无法判断循环次数时用while
while和for循环的区别:
从循环的角度来看,没什么区别。
从写法:
while的条件更分散,不确定性
for的条件更集中,稳定
从习惯应用场景:
while更适合做死循环
for不太方便做死循环
for循环的嵌套
for循环嵌套时,注意各个循环的计数器变量名不能重复,否则会变成死循环
**总结:**
多行多列的结构,使用循环的嵌套
外层循环控制行
内容循环控制列
打印九九乘法表:
如何使用:需要打印的内容多行多列的时候,需要做多重运算的时候
for(var i=1;i<=9;i++){
for(var j=1;j<=i;j++){
document.write( j + "*" + i + "=" + i*j + " " );
}
document.write("<br>");
}
4.死循环的概念和作用
无法靠自身控制结束的循环,称为死循环
但是可以利用死循环的原理,解决一些问题:
案例:篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,篮球的高度是0.1米。
不知道要循环几次的问题,利用死循环的原理,每次判断一个条件,直到满足条件,利用break跳出循环
5.循环中的控制关键字:
continue和break都是用来控制循环结构的,主要是用来停止循环。
break:立即结束当前循环,从执行到break,后面的代码都不再执行了
continue:立即跳过本次循环,从执行到continue,本次后面的代码都不再执行了
var i=0;
while(i<10){
if(i===5){
break;
}
console.log(i);
i++
}
var i=0;
while(i<10){
i++;
if(i===5){
continue;
}
console.log(i);
}