var tops = 5;

while (tops > 0){
    for (var spins = 0; spins < 3; spins++) {
        alert("Top is spinning!");
    }
    tops = tops - 1;
}

Werden die Schleifen var = spins nicht jedes Mal zweimal wiederholt, wenn var = tops um eins abnimmt, bis der Wert 1 erreicht ist? Würde dieser Code nicht 8 Mal alarmieren? Ich weiß nicht, warum ich 16 Mal alarmiert werde.

Danke im Voraus.

Es tut mir wirklich leid, dass ich diese Fragen für Neulinge gestellt habe. Ich lerne gerade die Grundlagen von JavaScript.

1
RufioLJ 7 Okt. 2012 im 11:40

3 Antworten

Beste Antwort

Sie sollten den Alarm 15 Mal erhalten, nicht 8 oder 16 Mal.

Die Werte von tops sind 5, 4, 3, 2, 1. Für jeden dieser Werte wird spins auf 0, 1 und 2 gesetzt.

5 (Werte für Tops) X 3 (Werte für Spins) = 15

4
kostja 7 Okt. 2012 im 07:43

Sie können einfach die Werte Ihrer Variablen (Tops, Spins) auf den Bildschirm drucken. Dann werden Sie sehen, dass es 15 Mal wiederholt wird und Sie werden sehen, warum.

Hier ist die jsFiddle für dich: http://jsfiddle.net/66UuT/

1
benams 7 Okt. 2012 im 07:47

Sie spins werden dreimal und nicht zweimal wiederholt, wenn Sie mit 0 beginnen.

0
Abubakkar 7 Okt. 2012 im 07:49