Wie erstelle ich eine neue Zeile in Javascript?


121
var i;
for(i=10; i>=0; i= i-1){
   var s;
   for(s=0; s<i; s = s+1){
    document.write("*");
   }
   //i want this to print a new line
   /document.write(?);

}

Ich drucke eine Pyramide von Sternen, ich kann die neue Zeile nicht zum Drucken bringen.


5
document.write ("<br>"); // wenn Sie eine .html verwenden
— jasonleonhard

Verwandter Thread hier .
— RBT

Antworten:


195

Verwenden Sie das \nfür ein Zeilenumbruchzeichen.

document.write("\n");

Sie können auch mehrere haben:

document.write("\n\n\n"); // 3 new lines!  My oh my!

Wenn dies jedoch in HTML gerendert wird, sollten Sie das HTML-Tag für eine neue Zeile verwenden:

document.write("<br>");

Die Zeichenfolge Hello\n\nTestin Ihrer Quelle sieht folgendermaßen aus:

Hello!

Test

Die Zeichenfolge Hello<br><br>Testsieht in der HTML-Quelle folgendermaßen aus:

Hello<br><br>Test

Der HTML-Code wird als Zeilenumbruch für die Person gerendert, die die Seite \nanzeigt. Der Text wird nur in die nächste Zeile in der Quelle eingefügt (wenn er sich auf einer HTML-Seite befindet).


5
Wenn das OP verwendet wird document.write, handelt es sich per Definition um eine HTML-Seite, nicht um eine XHTML-Seite. <br>ist der richtige Zeilenumbruch für eine HTML-Seite. <br />ist XHTML.
— TJ Crowder

1
<br> erstaunlich Vielen Dank
— Jeya Suriya Muthumari

31

wie wäre es mit:

document.write ("<br>");

(Angenommen, Sie befinden sich auf einer HTML-Seite, da ein Zeilenvorschub allein nur als Leerzeichen angezeigt wird.)


9

Verwenden Sie ein <br>Tag, um einen Zeilenumbruch im Dokument zu erstellen

document.write("<br>");

Hier ist ein Beispiel für eine Geige


1
+1, da dies das zu sein scheint, wonach das OP wirklich sucht :) (br vs \ n)
— Demian Brecht

Woher weißt du das? Gut, auf BR hinzuweisen, aber ein PRE hätte genauso gut dabei sein können. Wenn sie ASCII-Kunst erstellen, ist mein Gedanke, dass es Klartext ist.
— Jared Farrish

@Jared: Wie ruft man document.writeein Nur- Text-Dokument auf? (ZB, wie setzen Sie das scriptTag ein?) Ein guter Punkt über das prekönnte jedoch leicht ein preAbschnitt sein.
— TJ Crowder

@TJ - Die Anzeige ist Klartext, wie in ASCII-Grafik. Es ist immer noch ein HTML-Dokument, es wird jedoch nur als Klartextanzeige angezeigt.
— Jared Farrish

@ Jared: Ja, ich habe deinen Standpunkt verstanden. (Ich dachte, Ihr anderes Stück handelte von einem text/plainArzt, aber ich glaube, mir war klar, predass dies ein guter Punkt ist.)
— TJ Crowder

4

Verwendung "\n":

document.write("\n");

Beachten Sie, dass es in doppelte Anführungszeichen gesetzt werden muss, damit es als Zeilenumbruch interpretiert werden kann. Nein, tut es nicht.


1
Durch die Ausgabe einer neuen Zeile in einer HTML-Seite wird keine neue Zeile in ein HTML-Dokument eingefügt. (Und es müssen keine doppelten Anführungszeichen sein, einfache Anführungszeichen sind auch in Ordnung.)
— TJ Crowder

@TJ - Es sei denn, es handelt sich um einen PRE?
— Jared Farrish

Oh, bis auf Ihren Punkt, in dem Sie eine andere Antwort zu einem preElement kommentieren . Guter Punkt. Wenn Sie ASCII-Grafiken in einem preAbschnitt ausgeben , ist dies \nmöglicherweise das Richtige ... (Bearbeiten: LOL, überlappende Kommentare.)
— TJ Crowder

@TJ Crowder - Hier ist ein Beispiel für das, was ich meinte (grob entwickelt): jsfiddle.net/wT3Ab
— Jared Farrish

@ Jared: Oh, dein Kommentar zu prewar vollkommen klar. (Das Tag für Sie geschlossen: jsfiddle.net/wT3Ab/1 ) Best,
— TJ Crowder

3

document.writeln()ist das, wonach Sie suchen oder document.write('\n' + 'words')ob Sie mehr Granularität bei der Verwendung der neuen Linie suchen



2

Um eine neue Zeile zu erstellen, lautet das Symbol '\ n'.

var i;
for(i=10; i>=0; i= i-1){
   var s;
   for(s=0; s<i; s = s+1){
    document.write("*");
   }
   //i want this to print a new line
   document.write('\n');

}

Wenn Sie auf der Seite ausgeben, möchten Sie "<br/>"anstelle von verwenden '/n'.

Escapezeichen in JavaScript


Es muss nicht in doppelten Anführungszeichen stehen?
— Jared Farrish

5
In JavaScript sind keine doppelten und einfachen Anführungszeichen gleich. Sie können einfach nicht mit einem doppelten Anführungszeichen beginnen und mit einem einfachen enden.
— kemiller2002

Nun, das weiß ich. Ich wusste nur nicht, dass Einzel- und Doppel in JS gleich behandelt wurden. Muss in PHP stecken bleiben.
— Jared Farrish

Sich zwischen den Sprachen zu bewegen ist immer ein Schmerz :)
— kemiller2002

Gut zu wissen, danke. Lerne jeden Tag etwas Neues. :) Harmloser Fehler wahrscheinlich.
— Jared Farrish

2

In der HTML-Seite:

document.write("<br>"); 

Wenn Sie sich jedoch in einer JavaScript-Datei befinden, funktioniert dies als neue Zeile:

document.write("\n");

1

Für einen String schreibe ich einfach, "\n"um mir eine neue Zeile zu geben. Wenn Sie beispielsweise console.log("First Name: Rex" + "\n" + "Last Name: Blythe");Will eingeben, geben Sie Folgendes ein :

Vorname: Rex

Nachname: Blythe


1

Sie können auch eine Pyramide von Sternen wie diese

for (var i = 5; i >= 1; i--) {
     var py = "";
     for (var j = i; j >= 1; j--) {
         py += j;

     }
     console.log(py);
 }

0

\ n -> Zeilenumbruchzeichen funktioniert nicht zum Einfügen einer neuen Zeile.

    str="Hello!!";
    document.write(str);
    document.write("\n");
    document.write(str);

Aber wenn wir den folgenden Code verwenden, funktioniert es gut und es gibt eine neue Zeile.

    document.write(str);
    document.write("<br>");
    document.write(str);

Hinweis :: Ich habe es in Visual Studio Code versucht .


Dies setzt voraus, dass der Text als HTML angezeigt wird. Nicht sufe, wenn das hier wirklich eine generische Antwort ist.
— GhostCat

0

Ihre Lösung ist

var i;
for(i=10; i>=0; i= i-1){
   var s;
   for(s=0; s<i; s = s+1){
    document.write("*");
   }
   //printing new line
   document.write("<br>");
}

-1

\ n funktioniert nicht. Verwenden Sie HTML-Tags

document.write("<br>");
document.write("?");

-1

Wenn Sie eine JavaScript-Datei (.js) verwenden, verwenden Sie document.write("\n");. Wenn Sie sich in einer HTML-Datei (.html oder .htm) befinden, verwenden Sie document.write("<br/>");.


-1
document.write("\n");

funktioniert nicht, wenn Sie es ( document.write();) mehrmals ausführen .

Ich schlage vor, Sie sollten gehen für:

document.write("<br>");

PS Ich weiß, dass die Leute diese Antwort oben angegeben haben, aber nirgendwo den Unterschied gefunden haben :)



-1

Sie können den folgenden Link verwenden: Neue Zeile in Javascript

  var i;
for(i=10; i>=0; i= i-1){
   var s;
   for(s=0; s<i; s = s+1){
    document.write("*");
   }
   //i want this to print a new line
   /document.write('<br>');

}

1
Ihr Link ist defekt und Ihr Codebeispiel sagt nichts aus, was die akzeptierte Antwort von 2011 noch nicht sagt.
— Quentin

Nun, der Link ist behoben, aber er verweist auf eine erklärungsfreie Demo und Sie sagen immer noch nichts, was bereits 2011 gesagt wurde.
— Quentin
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.