var hash = "";
var count = 1;
var n = 3;
for (var pound = 1; pound <=7; pound ++)
{while (hash.length != count)
hash += "#";
hash += "\n";
count += n;
n ++;}
console.log(hash);
Hallo, ich bin neu in Javascript und relativ neu zu Codierung im Allgemeinen. Ich habe ein paar Stunden damit verbracht, meinen obigen Code zu analysieren. BTW, ich habe mich selbst ohne Hilfe generiert. Ich würde nicht sagen, dass ich stolz bin, weil ich nicht weiß warum oder wie es funktioniert. Ich denke, ich bekomme die grundlegende Mathematik hinter der Arbeit und wenn ich die Werte der Variablen am Ende überprüfe, stimmen die Ergebnisse mit meiner Berechnung überein. Aber ich weiß nicht genau was passiert. Es erzeugt ein Dreieck mit '#'. Ich habe versucht, die For-Schleife zu entfernen, um genau zu sehen, was die While-Schleife macht, aber ich kann es nicht verstehen. Bitte schau es dir an.JavaScript: While-Schleife innerhalb einer for-Schleife
Zuerst ist der Wert von hash.length in der ersten For-Schleife und in der while-Schleife gleich 0. Vergleichen Sie, um die Zahl 1 zu zählen, sie passen nicht zusammen und sind daher nextline. Nach dem Hinzufügen von "#" und "\ n" wird hash.length zu 2. Aber der Code wird bis zum Ende gelesen, wodurch var jetzt 4 und var n auch gleich 4 ist.
Nun passiert die nächste Schleife nicht innerhalb der While-Schleife und ich habe es selbst ausprobiert. Es geht zurück auf die For-Schleife. Überprüfen Sie die Bedingung von "hash.length! = Count", diese Bedingung gilt immer noch als hash.length ist 2 und count ist jetzt 4. Da sie nicht gleich sind, sollte nicht die while wiederholen, bevor Sie wieder in die For-Schleife gehen ?
Dies sieht nicht wie gültiges Javascript aus. Zumindest ist die linke Klammer für "for" nicht angepasst. Dies sollte nicht ausgeführt werden. – Carcigenicate
@Carcigenicate: Es ist gültig. Es wird ausgeführt. Es ist einfach schrecklich falsch formatiert. – Amadan
@Amadan Whoops! In der mobilen App wird das rechte Ende der for-Schleife abgeschnitten, bis Sie blättern. – Carcigenicate