共计 1579 个字符,预计需要花费 4 分钟才能阅读完成。
在 JavaScript 语言中,当咱们应用 while
循环时,只有指定条件为 true,循环就能够始终执行。
并且只有条件始终满足,就能够实现一个有限循环,例如:
while(true){console.log("1");
}
执行这个循环,就会无止境的输入 1。
while 语法及其应用
语法如下所示:
while (condition) {// 要执行的代码块}
condition
是循环的条件,只有当循环条件成立时,才会执行花括号 {}
中的代码,如果条件不成立则不会执行代码。
示例:
应用 while
循环输入小于 10 的所有整数:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS_侠课岛 (9xkd.com)</title>
</head>
<body>
<div>
<p id="while"></p>
</div>
<script>
var number = "";
var i = 0;
while (i < 10) {
number += "<br> 第"+i+"个数";
i++;
}
document.getElementById("while").innerHTML = number;
</script>
</body>
</html>
在浏览器中关上:
在上述代码中,因为咱们指标是输入“小于 10 的所有整数”,所以这其实不包含 10,而是从 0 – 9 之间的整数。这样的话咱们能够申明初始变量 i
为 0,示意从 0 开始输入,而后循环条件为 i < 10
,只有满足这个条件,循环就会始终执行。而后在代码块中加上一句 i++;
,示意每次循环 初始变量值都会加 1,始终加到 9。
do/while 循环的应用
do/while
循环是 while
循环的变体,它与 while
循环的不同在于,在查看条件是否为真之前,该循环将会执行一次代码块,而后只有条件为真,它就将反复该循环。也就是说,不论如何 do/while
循环都会至多执行一次。
语法:
do{// 要执行的代码块}while(condition);
示例:
通过 do/while
循环以递加形式,循环输入 1 -10 以内的数字:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS_侠课岛 (9xkd.com)</title>
</head>
<body>
<div>
<p id="dowhile"></p>
</div>
<script>
var dow = ""
var i = 10;
do {
dow += "<br><br> 第" +i+ "个数";
i--;
}while (i > 0);
document.getElementById("dowhile").innerHTML = dow;
</script>
</body>
</html>
在浏览器中关上:
因为咱们要实现的是递加输入 1 -10 以内的数字,就是 10、9、8、7、6、5、4、3、2、1
,那么初始化变量必定是从 10 开始,而后循环条件为 i > 0
,或者 i >= 1
也一样。在代码块中加上 i--
,每循环一次,初始条件变量将减去一,始终减到大于 0 为止。
再强调一次,do/while
与 while
循环的不同之处在于:它会先执行一次循环中的语句,而后再判断表达式是否为真,如果为真则持续循环,如果为假则终止循环。所以说不论条件是否为真,do/while
循环至多要执行一次循环语句。
例如看上面这段代码:
do{console.log("1");
}while(false);
// 输入:1
只管咱们给 while
前面的循环条件指定为 false
,代码执行后果仍然输入了一个 1,这示意循环执行了一次。
不同循环的应用情景
- 当循环次数不限度、不确定时能够应用
while
循环。 - 循环次数有限度、曾经确定时能够用
for
循环。
入手小练习
- 定义一个输入框,随机输出一个数,并判断这个数字是否符合条件?
- 循环弹框输出数据,并在控制台打印,如果输出为 exit,则退出循环。