¿Cómo creo una nueva línea en 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(?);

}

Estoy imprimiendo una pirámide de estrellas, no puedo imprimir la nueva línea.

Technupe
fuente
5
document.write ("<br>"); // si usa un .html
jasonleonhard
Hilo relacionado aquí .
RBT

Respuestas:

195

Utilice \npara un carácter de nueva línea.

document.write("\n");

También puede tener más de uno:

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

Sin embargo, si se está procesando en HTML, querrá usar la etiqueta HTML para una nueva línea:

document.write("<br>");

La cadena Hello\n\nTesten su fuente se verá así:

Hello!

Test

La cadena Hello<br><br>Testse verá así en la fuente HTML:

Hello<br><br>Test

El HTML se representará como saltos de línea para la persona que visualiza la página, \nsimplemente deja caer el texto a la siguiente línea en la fuente (si está en una página HTML).

Tom Gullen
fuente
5
Por definición, si el OP está usando document.write, es una página HTML, no una página XHTML. <br>es el salto de línea correcto para una página HTML. <br />es XHTML.
TJ Crowder
1
<br> increíble Muchas gracias
Jeya Suriya Muthumari
31

qué tal si:

document.write ("<br>");

(suponiendo que se encuentre en una página html, ya que un avance de línea solo se mostrará como un espacio)

robar
fuente
9

Use una <br>etiqueta para crear un salto de línea en el documento

document.write("<br>");

Aquí hay un violín de muestra

JaredPar
fuente
1
+1 ya que esto parece ser lo que realmente está buscando el OP :) (br vs \ n)
Demian Brecht
¿Cómo lo sabes? Es bueno señalar BR, pero un PRE también podría haber estado allí con la misma facilidad. Si están construyendo arte ASCII, mi pensamiento es texto plano.
Jared Farrish
@Jared: ¿Cómo se llama document.writeen un documento de texto sin formato? (Por ejemplo, ¿cómo se pone la scriptetiqueta?) Sin preembargo, un buen punto sobre el podría ser fácilmente una presección.
TJ Crowder
@TJ: la pantalla es texto sin formato, como en el arte ASCII. Sigue siendo un documento HTML, aunque solo lo muestra como texto sin formato.
Jared Farrish
@Jared: Sí, entendí tu punto. (Pensé que tu otra parte era sobre un text/plaindocumento, pero creo que tenía claro que preera un buen punto.)
TJ Crowder
4

Utilizar "\n":

document.write("\n");

Tenga en cuenta que debe estar entre comillas dobles para que se interprete como una nueva línea. No, no lo hace.

Jared Farrish
fuente
1
La salida de una nueva línea en una página HTML no introducirá una nueva línea en un documento HTML. (Y no tiene por qué ser comillas dobles, las comillas simples también están bien).
TJ Crowder
@TJ - ¿A menos que haya un PRE involucrado?
Jared Farrish
Ooh, excepto por tu punto de comentar otra respuesta sobre un preelemento. Buen punto. Si enviar arte ASCII a una presección, \npuede ser lo correcto ... (Editar: LOL, comentarios superpuestos).
TJ Crowder
@TJ Crowder - Aquí hay un ejemplo de lo que quise decir (desarrollado crudamente): jsfiddle.net/wT3Ab
Jared Farrish
@Jared: Oh, tu comentario prefue perfectamente claro. (Cerró la etiqueta para usted: jsfiddle.net/wT3Ab/1 ) Lo mejor,
TJ Crowder
3

document.writeln()es lo que está buscando o document.write('\n' + 'words')si está buscando más granularidad cuando se usa la nueva línea

acconrad
fuente
2

Alternativamente, escriba en un elemento con CSS white-space: prey utilícelo \npara el carácter de nueva línea.

alex
fuente
¡Gracias! ¡Estuvo cerca e white-space: pre-wraphice exactamente lo que quería! w3schools.com/cssref/pr_text_white-space.asp
frederj
2

Para crear una nueva línea, el símbolo es '\ 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');

}

Si está enviando a la página, querrá usar en "<br/>"lugar de '/n';

Caracteres de escape en JavaScript

kemiller2002
fuente
¿No tiene que estar entre comillas dobles?
Jared Farrish
5
No hay comillas dobles ni simples iguales en JavaScript. Simplemente no puede comenzar con una comilla doble y terminar con una sola.
kemiller2002
Bueno, ya lo sé. Simplemente no sabía que los solteros y los dobles recibían el mismo trato en JS. Debe estar atascado en PHP.
Jared Farrish
Cambiar de idioma es siempre un dolor :)
kemiller2002
Es bueno saberlo, gracias. Aprenda algo nuevo cada día. :) Error inofensivo, probablemente.
Jared Farrish
2

En la página html:

document.write("<br>"); 

pero si está en un archivo JavaScript, esto funcionará como una nueva línea:

document.write("\n");
Suhani Mendapara
fuente
1

Para una cadena, solo escribo "\n"para darme una nueva línea. Por ejemplo, al escribir console.log("First Name: Rex" + "\n" + "Last Name: Blythe");Will, escribe:

Nombre: Rex

Apellido: Blythe

Tito E Surek
fuente
1

también puedes pirámide de estrellas como esta

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

     }
     console.log(py);
 }
Shadab Ali
fuente
0

\ n -> el carácter de nueva línea no funciona para insertar una nueva línea.

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

Pero si usamos el siguiente código, entonces funciona bien y da una nueva línea.

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

Nota: Lo intenté en Visual Studio Code .

VicXj
fuente
Esto supone que el texto se mostrará como HTML. No es suficiente si esa es realmente una respuesta genérica aquí.
GhostCat
0

tu solución es

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>");
}
Adeojo Emmanuel IMM
fuente
-1

\ n no funciona. Utilice etiquetas html

document.write("<br>");
document.write("?");
Paradoja Nafi
fuente
-1

Si está utilizando un archivo JavaScript (.js), utilice document.write("\n");. Si está en un archivo html (.html o. Htm), utilice document.write("<br/>");.

Un panda de codificación
fuente
-1
document.write("\n");

no funcionará si lo está ejecutando ( document.write();) varias veces.

Te sugiero que vayas por:

document.write("<br>");

PD : Sé que la gente ha dicho esta respuesta anteriormente, pero no encontró la diferencia en ninguna parte, así que :)


fuente
-1

Intente escribir su código entre la etiqueta HTML pre.

Polo Macario
fuente
amablemente agregue el código también. sería mejor entender
Shashin Bhayani
-1

Puede utilizar el siguiente enlace: Nueva línea en 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>');

}
Nagnath Mungade
fuente
1
Su enlace está roto y su ejemplo de código no dice nada que la respuesta aceptada de 2011 no diga ya.
Quentin
Bueno, el enlace es fijo, pero apunta a una demostración sin explicación y todavía no estás diciendo nada, ya lo dije en 2011.
Quentin