while循环可以在条件表达式为真的前提下,循环执行指定的一段代码,知道表达式不为真时结束
语法结构如下:
while(条件表达式){ //条件为真时,往下执行循环体,为假则结束循环
循环体代码
}
1.先执行条件表达式,如果为true,则执行循环体代码,如果为false,执行后面的呢代码
2.执行循环体代码
3.循环体代码执行完毕之后,程序会继续判断执行条件表达式,如条件仍为true,则会继续执行循环体代码。直到执行条件为false,整个循环结束
- while循环和for循环的区别是:while循环把初始化变量放在循环外,计数器放在循环内部了,如果不加上操作表达式(
i++
),会变成死循环- while循环和for循环,除了结构不同之外,条件和执行顺序都一样
var i = 1; for(var i = 1; a <= 100; i++){
while(i <= 100){ ==> 循环体
循环体 }
i++;
}
打印人的一生,从1岁到100岁;
<script>
//打印人的一生,长1岁到100岁
var age = 1;
while(age <= 100){
console.log('今年' + age + '岁了。');
age ++;
}
</script>
image.png
计算1-100之间所有的整数和
<script>
//计算1-100之间所有的整数和
var sum = 1;
var num = 0;
while(sum <= 100){
num = num + sum;
sum++;
}
console.log(num);
</script>
image.png
弹出一个提示框:你爱我吗,如果输入我爱你,结束提示,否则一直弹出
while的循环体中不能用alert(a); 输出询问信息,会无限输出用户输入的信息
<script>
//弹出一个提示框:你爱我吗,如果输入我爱你,结束提示,否则一直弹
var a = prompt('你爱我吗?');
var b = '我爱你';
while (a !== b){
// alert(a); 不能这样写,这样写就会无限输出用户输入的信息
a = prompt('你爱我吗?');
}
alert('我也爱你');
</script>
do···while是while循环的一个变体,会先执行一次代码块,然后对条件表达式进行判断,如果为true,则执行循环体,为
false则退出循环
<script>
var i = 1;
//do...while 循环,先把要执行的循环跑一遍,再来判定范围
do{
//循环体
i++;
}while(条件表达式)
</script>
do...while 和while的最大区别是,while要符合条件才执行循环,而do...while不管符不符合条件,先执行一次循环
<script>
var i = 1;
do{
console.log('how are you');
i++;
}while(i <= 100)
</script>
image.png
<script>
//案例:打印人的一生
var i = 1;
do{
console.log('这个人 ' + i + '岁了');
i++
}while(
i <= 100
)
</script>
image.png
<script>
//计算1-100之间所有的整数和
var i = 1;
var num = 0;
do{
num += i;
i++;
}while(i <= 100)
console.log(num);
</script>
image.png
这是自己做的:
<script>
//弹出提示框,你爱我吗,如果输入我爱你,则提示结束,否则一直弹
var res = prompt('你爱我吗?');
str = '我爱你';
i = 1;
do{
res = prompt('你爱我吗?');
i++;
}while(res !== str)
</script>
<script>
//视频里做的
do{
var msg = prompt('你爱我吗?');
}while(msg !== '我爱你')
alert('我也爱你啊');
</script>
在JS中,有三个循环:
for
、while
、do...while
在多数情况下,都可以互相替代使用
while 和 do...while循环可以做一些更复杂的条件判断,比for灵活一些
while是先判断后执行,do...while是先执行后判断,所以do...while至少执行一次
网友评论