Je voudrais utiliser console.log () pour enregistrer des messages sans ajouter de nouvelle ligne après chaque appel à console.log (). Est-ce possible?
javascript
google-chrome
console
logging
MitchellSalade
la source
la source
console.clear()
et, par exempleconsole.log()
.Réponses:
Non, ce n'est pas possible. Vous devrez conserver une chaîne et concaténer si vous voulez tout sur une seule ligne, ou placer votre sortie ailleurs (par exemple, une autre fenêtre).
la source
question
est pasconsole.log
. La question concerne également la console du navigateur, pas Node.js.apply
.Dans NodeJS, vous pouvez utiliser process.stdout.write et vous pouvez ajouter '\ n' si vous le souhaitez.
console.log(msg)
équivaut àprocess.stdout.write(msg + '\n')
.la source
Vous pouvez mettre autant de choses
arguments
que vous le souhaitez:console.log('hi','these','words','will','be','separated','by','spaces',window,document)
Vous obtiendrez toute cette sortie sur une ligne avec les références d'objet en ligne et vous pourrez ensuite déposer leurs inspecteurs à partir de là.
la source
Oui c'est possible (consultez la démo ci-dessous) - en implémentant votre propre console virtuelle au-dessus de la console native du navigateur, puis en la synchronisant avec la vraie.
C'est beaucoup plus facile qu'il n'y paraît:
console.clear()
avant d'écrire pour effacer tout contenu précédentconsole.log()
(ou avertir, erreur, etc.) pour remplir la console avec le contenu de votre tampon d'affichageEn fait, je fais ça depuis un certain temps maintenant. Une implémentation courte et rudimentaire de l'idée serait quelque chose du genre suivant, mais toujours capable d' animer le contenu de la console:
Il a certainement ses inconvénients lors du mixage avec une interaction directe avec la console, et peut certainement paraître moche - mais il a certainement ses utilisations valables, que vous ne pourriez pas réaliser sans lui.
la source
La réponse courte est non.
Mais
Si votre cas d'utilisation consiste à tenter de consigner des données en perpétuel changement tout en évitant le gonflement de la console, une façon d'y parvenir (dans certains navigateurs) serait de l'utiliser
console.clear()
avant chaque sortie.Notez que cela interromprait probablement toute autre fonctionnalité de journalisation qui se déroulait dans votre application.
Avertissement: je classerais cela comme un hack.
la source
Si votre seul but est d'arrêter l'impression sur plusieurs lignes, une façon est de regrouper les valeurs si vous ne voulez pas qu'elles remplissent votre console complète
PS: - Voir la console de votre navigateur pour la sortie
console.group
console.groupCollapsed
la source
Quelque chose à propos de l'idée @shennan:
Afficher l'extrait de code
la source
collectez votre sortie dans un tableau, puis utilisez la fonction de jointure avec un séparateur préféré
vérifiez également Array.prototype.join () pour les détails du mode
la source
Vous pouvez utiliser un opérateur d'étalement pour afficher la sortie sur une seule ligne. La nouvelle fonctionnalité de javascript ES6. voir l'exemple ci-dessous
Cela imprimera 1 à 10 tableaux en une seule ligne.
la source
si vous voulez par exemple des éléments de tableau de journal de console sans nouvelle ligne, vous pouvez faire comme ceci
la source
la source
A.forEach(row => console.log(row.join(' ')))