Heim  >  Artikel  >  Web-Frontend  >  JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

青灯夜游
青灯夜游Original
2022-08-03 18:04:318354Durchsuche

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

Eine Schleife besteht darin, eine Sache wiederholt auszuführen. Beim Schreiben von Code stoßen wir häufig auf einige Vorgänge, die wiederholt ausgeführt werden müssen, z. B. das Durchlaufen einiger Daten, das wiederholte Ausgeben einer bestimmten Zeichenfolge usw. Wenn Sie es schreiben Zeile für Zeile ist dies zu mühsam. Wir sollten uns dafür entscheiden, eine Schleife zu verwenden, um sie abzuschließen.

Der Zweck einer Schleife besteht darin, einen bestimmten Codeabschnitt wiederholt auszuführen. Durch die Verwendung von Schleifen kann der Programmierdruck verringert, Coderedundanz vermieden, die Entwicklungseffizienz verbessert und die spätere Wartung erleichtert werden. Die while-Schleife ist die einfachste Schleifenanweisung in JavaScript. Erfahren Sie mehr über die Verwendung von while-Schleifen und do-while-Schleifen.

1: while-Schleife

Die while-Schleifenanweisung ist eine when-type-Schleifenanweisung. Wenn die Bedingung erfüllt ist, wird sie ausgeführt nicht zufrieden, es hört auf. 当型循环语句,先对循环条件进行判断,当条件满足,则执行循环体,不满足时则停止。

作用:反复执行某一项操作,直到指定的条件不成立。

特点:先判断表达式,当表达式结果为真时执行相应的语句。

1、JS while 循环语法

while(表达式){    //表达式为循环条件
     // 要执行的代码
}

语句解析:

  • 先计算“表达式”的值,当值为真时, 执行循环体内的“PHP语句块”;

    说明:“表达式”的计算结果是布尔类型( TRUE 或 FALSE)的,如果是其他类型的值也会自动转换为布尔类型的值(因为PHP是弱语言类型,会根据变量的值,自动把变量转换为正确的数据类型)。

    “语句块”就是由{ }包围的一个或多个语句的集合;如果语句块中只有一个语句,也可以省略{ }

  • 执行结束后,返回到表达式,再次计算表达式的值进行判断,当表达式值为真,则继续执行“语句块”……这个过程会一直重复

  • 直到表达式的值为假时才跳出循环,执行while 下面的语句。

while语句的流程图如下所示:

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

通常“表达式”是使用比较运算符或者逻辑运算符计算后的值

示例代码如下:

<script>
var i = 1;
while( i <= 5) {
    document.write(i+", ");
    i++;
}
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

注意事项

在编写循环语句时,一定要确保条件表达式的结果能够为假(即布尔值 false),因为只要表达式的结果为 true,循环会一直持续下去,不会自动停止,对于这种无法自动停止的循环,我们通常将其称为“无限循环”或“死循环”。

如果不小心造成无限循环,可能会导致浏览器或者计算机卡死。

如果表达式一直为真,循环条件一直成立,则while 循环会一直执行下去,永不结束,成为“死循环”

var i = 1;
while(i){
    console.log(i);
}

运行程序后,会一直输出变量i

Funktion: Führen Sie wiederholt einen Vorgang aus, bis die angegebene Bedingung nicht mehr erfüllt ist.

Funktionen:

Beurteilen Sie zuerst den Ausdruck und führen Sie die entsprechende Anweisung aus, wenn das Ausdrucksergebnis wahr ist.


1. JS while-Schleifensyntax JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

<script>
var i = 1;
var sum=0;
while(i<=100){
	sum+=i;
	i++;
}
console.log("1加到100的值为:"+sum);
</script>

Anweisungsanalyse:

  • JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)Berechnen Sie zuerst den Wert von „expression“, wenn der Wert ist Wenn wahr, führen Sie den „PHP-Anweisungsblock“ im Schleifenkörper aus.

    Hinweis: Das Berechnungsergebnis von „Ausdruck“ ist vom booleschen Typ (TRUE oder FALSE). automatisch in einen booleschen Wert konvertiert (Da PHP ein schwacher Sprachtyp ist, werden Variablen basierend auf dem Wert der Variablen automatisch in den richtigen Datentyp konvertiert.) Ein „Anweisungsblock“ ist eine Sammlung von einer oder mehreren Anweisungen, die von { umgeben sind; wenn es nur eine Anweisung im Anweisungsblock gibt, kann auch { sein weggelassen werden.

  • Kehren Sie nach Abschluss der Ausführung zum Ausdruck zurück und berechnen Sie den Wert des Ausdrucks zur Beurteilung erneut. Wenn der Ausdruckswert wahr ist, fahren Sie mit der Ausführung des „Anweisungsblocks“ fort ... Dieser Vorgang wird wiederholt.

  • Verlassen Sie die Schleife erst, wenn der Wert des Ausdrucks falsch ist, und führen Sie die folgende Anweisung aus.

Das Flussdiagramm der while-Anweisung lautet wie folgt:

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

Normalerweise ist „Ausdruck“ ein Wert, der mithilfe von Vergleichsoperatoren oder logischen Operatoren berechnet wird

Der Beispielcode lautet wie folgt:

<script>
var i = 1900;
var count = 0; //计数闰年的个数
while (i <= 2020) {
    //判断是否是闰年
    if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
        document.write(i + "  ");
        count++;
        if (count % 6 == 0) {
            document.write("<br/>");
        }
    }
    i++;
}
</script>
JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

Hinweise

Stellen Sie beim Schreiben von Schleifenanweisungen sicher, dass die Bedingungen Das Ergebnis des Ausdrucks kann falsch sein (dh der boolesche Wert ist falsch), denn solange das Ergebnis des Ausdrucks wahr ist, wird die Schleife fortgesetzt und nicht automatisch gestoppt. Für diese Art von Schleife kann sie nicht automatisch gestoppt werden Wir nennen es normalerweise „Endlosschleife“ oder „Endlosschleife“.

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)Wenn Sie versehentlich eine Endlosschleife erstellen, kann dies dazu führen, dass der Browser oder der Computer einfriert.

🎜Wenn der Ausdruck immer wahr ist und die Schleifenbedingung immer wahr ist, wird die while-Schleife weiter ausgeführt und endet nie und wird zu einer „Endlosschleife“ 🎜
while(条件1){
     // 条件1成立执行的代码

     while(条件2){
          // 条件2成立执行的代码
           ......
     }
}
🎜Nach dem Ausführen des Programms wird die Variable i bleibt immer der Ausgabewert, bis der Benutzer das Schließen erzwingt. Beispiel für eine JS-While-Schleife 1900 bis 2020 Alle Schaltjahre zwischen den Jahren werden mit 6 pro Zeile ausgegeben: 🎜🎜🎜🎜🎜🎜2. JS while-Schleife verschachtelte Struktur 🎜🎜🎜🎜while-Schleife kann auch einen verschachtelten Effekt erzielen, d. h. innerhalb der while-Schleife verschachteln eine oder mehrere while-Schleifen. 🎜🎜🎜 Grammatikformat: 🎜🎜
<script type="text/javascript">
	var i = 0;
	while(i < 2){
	   console.log("i =", i);
	   var j = 0;
	   while(j < 2){
		console.log("\tj =", j);
		j += 1;
	   }
	   i++;
	}
	console.log("Over");
</script>
🎜🎜🎜 Zusammenfassung: 🎜 Die sogenannte While-Schleifenverschachtelung ist eine While-Verschachtelung. Jedes While ist mit der vorherigen Grundsyntax identisch. 🎜🎜Hier definieren wir die Verschachtelung von zwei while-Schleifen. Natürlich können wir so viele while-Schleifen verschachteln, wie wir möchten. 🎜🎜🎜🎜Verstehen Sie den Ausführungsprozess der While-Schleife.🎜🎜🎜Wenn die innere Schleife abgeschlossen ist, wird die bedingte Beurteilung der nächsten äußeren Schleife ausgeführt. 🎜🎜🎜🎜🎜🎜Beispiel 1: Mit verschachtelten Schleifen Zähler drucken🎜🎜
<script>
/*
1. 循环打印3次媳妇,我错了
2. 刷碗
3. 上面是一套惩罚,这一套惩罚重复执行3天----一套惩罚要重复执行---放到一个while循环里面
*/
var j = 0
while(j < 3){
    var i = 0
    while(i < 3){
        document.write(&#39;媳妇,我错了<br>&#39;)
        i += 1;
	}
    document.write(&#39;刷碗<br>&#39;)
	document.write(&#39;一套惩罚就结束了!!!!!!!!!!!!<br>&#39;)
    j += 1;
}
</script>
🎜🎜🎜

首先,我们定义了一个最外层的 while 循环嵌套,计数器 变量 i 从 0 开始,结束条件是 i

在最外层循环的里面,同时又定义了一个内部循环,计数器变量 j 从 0 开始,结束条件是 i

while循环嵌套总结

JavaScript 的 while 循环也可以实现嵌套的效果,即 while 循环里面嵌套一个或多个 while 循环。

示例2:

<script>
/*
1. 循环打印3次媳妇,我错了
2. 刷碗
3. 上面是一套惩罚,这一套惩罚重复执行3天----一套惩罚要重复执行---放到一个while循环里面
*/
var j = 0
while(j < 3){
    var i = 0
    while(i < 3){
        document.write(&#39;媳妇,我错了<br>&#39;)
        i += 1;
	}
    document.write(&#39;刷碗<br>&#39;)
	document.write(&#39;一套惩罚就结束了!!!!!!!!!!!!<br>&#39;)
    j += 1;
}
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

二:do-while循环

除了while循环,还有一种 do-while 循环。

do-while循环语句是一种“直到型”循环语句,它是先在执行了一次循环体中的“语句块”之后,然后再对循环条件进行判断,如果为真则继续循环,如果为假,则终止循环。

因此:不论表达式的结果,do-while循环语句至少会执行一次“语句块”。

do-while循环语句的特点:先执行循环体,然后判断循环条件是否成立。

1、JS do-while 循环语法

do{
    语句块;  
}while(表达式);//表达式为循环条件

语句解析:

  • 先执行一次循环体中的“语句块”,然后判断“表达式”的值,当“表达式”的值为真时,返回重新执行循环体中的语句块……这个过程会一直重复

  • 直到表达式的值为假时,跳出循环,此时循环结束,执行后面的语句。

说明:

  • 和while循环一样,do-while循环中“表达式”的计算结果一定是布尔型的 TRUE 或 FALSE,如果是其他类型的值也会自动转换为布尔类型的值。

  • do-while语句最后的分号;是无法省略的(一定要有),它是do while循环语法的一部分。

do-while循环语句的流程图如下所示:

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

JS do-while 循环示例

【示例1】使用 do-while 输出1~5数字:

<script>
var i = 1;
do {
    document.write(i+", ");
    i++;
}while( i <= 5);
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

【示例2】使用 while 循环计算 1~100 之间所有整数的和:

<script>
var i = 1;
var sum=0;
do{
	sum+=i;
	i++;
}while(i<=100);
console.log("1 + 2 + 3 + ... + 98 + 99 + 100 = "+sum);
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

【示例3】找出 1900 年到 2020 年之间所有的闰年

<script>
var i = 1900;
var count = 0; //计数闰年的个数
do {
    //判断是否是闰年
    if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0) {
		console.log(i);
    }
    i++;
}while (i <= 2020);
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

2、JS do-while 循环嵌套结构

do while循环 也可以实现嵌套的效果,即 do while 循环里面嵌套一个或多个 do while 循环。这种写法就类似于 while 循环 的嵌套。

语法:

do{
    // 语句块1;
    do{
    	// 语句块2;
    	do{
    		// 语句块2;
    		......
	}while(条件3);
    }while(条件2);
}while(条件1);

这里,我们定义了三个 do while 循环的嵌套,当然,我们可以嵌套任意多个的 do while 循环。

案例:使用循环嵌套,打印计数器

<script type="text/javascript">
	var i = 0;
	do{
		console.log("i =", i);
		var j = 0;
		do{
			console.log("\tj =", j);
			j += 1;
		}while(j < 2);
		i++;
	}while(i < 2);
	console.log("Over");
</script>

JS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele)

首先,我们定义了一个最外层的 do while 循环嵌套,计数器 变量 i 从 0 开始,结束条件是 i

在最外层循环的里面,同时又定义了一个内部循环,计数器变量 j 从 0 开始,结束条件是 i

do while循环嵌套总结

JavaScript 的 do while 循环也可以实现嵌套的效果,即 do while 循环里面嵌套一个或多个 do while 循环。

【推荐学习:javascript高级教程

Das obige ist der detaillierte Inhalt vonJS-Schleifenlernen: Verwendung von While-Schleifenanweisungen (detaillierte Beispiele). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn