RDC
¿Hay alguna manera de obtener nuevas líneas en consola.log al imprimir varios objetos?
Supongamos que tenemos console.log(a, b, c)
donde a
, b
y c
son objetos. ¿Hay alguna manera de obtener un salto de línea entre los objetos?
Lo intenté console.log(a, '\n', b, '\n', c)
pero eso no funciona en Node.js.
Agregar \n
(nueva línea) entre ellos:
console.log({ a: 1 }, '\n', { b: 3 }, '\n', { c: 3 })
-
¡simplemente imprime el ” ‘\n’ ” en la consola también!
– Behzad
24 de mayo de 2022 a las 17:33
RDC
No tengo idea de por qué esto funciona en Node.js, pero lo siguiente parece funcionar:
console.log('', a, '\n', b, '\n', c)
Cortesías de theBlueFish.
-
Porque console.log tiene dos variaciones. Cuando usa una cadena como primer argumento, considera la cadena como una cadena de formato con otros argumentos como sustituciones (por lo que, en última instancia, es una cadena gigante). Si usa cualquier otro tipo como primer argumento, simplemente vuelca las representaciones de cadena de todos los argumentos tal como están.
– Vasan
04/04/2018 a las 21:46
-
Muchas gracias por esta explicación; ¡Si fuera una respuesta, le daría una recompensa! Además, /rude to the Node devs por una tan terriblemente inconsistente
console.log
¡diseño!– máquina fantasma
18 de marzo de 2020 a las 20:43
-
Que es “el pez azul”? ¿Un usuario aquí? ¿Una página web? el editor de texto? ¿Algo más?
-Peter Mortensen
8 de febrero de 2022 a las 12:38
Shraddha J
Sin agregar espacios en blanco al comienzo de una nueva línea:
console.log("one\ntwo");
Producción:
one
two
Esto agregará un espacio en blanco al comienzo de una nueva línea:
console.log("one", "\n", "two");
Producción:
one
two
-
Creo que te falta un “: console.log(“uno”,”\n”,”dos”);
– Patrick Lines-Mattei
17 de julio de 2020 a las 1:30
ele
Una alternativa es crear su propio registrador junto con el registrador original de JavaScript.
var originalLogger = console.log;
console.log = function() {
for (var o of arguments) originalLogger(o);
}
console.log({ a: 1 }, { b: 3 }, { c: 3 })
Si desea evitar cualquier conflicto con el registrador original de JavaScript:
console.ownlog = function() {
for (var o of arguments) console.log(o);
}
console.ownlog({ a: 1 }, { b: 3 }, { c: 3 })
pastel de frutas
Puedes usar un literal de plantilla:
console.log(`a is line 1
b is line 2
c is line 3`)
Para activar un literal de plantilla, debe hacer clic en el carácter a la izquierda del número 1 (en mi teclado: Microsoft Wired 600).
No confundir: Él '
símbolo es el mismo que Turno + @ en mi teclado con `
.
'
y "
creará cadenas y `
creará literales de plantilla.
Súa Morales
Otra forma sería una simple:
console.log(a);
console.log(b);
console.log(c);
Pedro Mortensen
Solo haz console.log({ a, b, c });
Ejemplo:
var a="var a";
var b = 'var b';
var c="var c";
console.log({ a, b, c });
Esto agregará un área expandible en la consola:
consola.log(a, ‘\n’, b, ‘\n’, c);
– Randy Casburn
04/04/2018 a las 21:02
console.log(a); console.log(b); console.log(c)
funciona también– axiac
04/04/2018 a las 21:03
Usa esto: console.log(‘a’,’\n’,’b’,’\n’,’c’); Ponga a, b y c dentro de comillas simples.
– manishk
04/04/2018 a las 21:18
¿Qué sistema operativo y qué versión de nodo usa (node –version)?
– Ori Drori
04/04/2018 a las 21:22
@OriDrori: no se menciona el nodo en la pregunta. Esto podría tratarse de una implementación basada en navegador de console.log.
– Quintín
04/04/2018 a las 21:24