Node.js formaté sortie de la console
Est-il un simple moyen intégré pour la sortie des données au format de la console dans Node.js?
Tiret, aligner le champ à gauche ou à droite, ajouter des zéros?
- Je ne sais pas du tout de ceux-ci, mais similaire est
colors
et il peut formater les chaînes éditées par exemple"Green colour".green
- Je suis en supposant que vous êtes en demandant de faire quelque chose comme
console.setup({ color: 'green', prepend: '0000' })
, mais déjà intégré? Vous pourriez faire votre propre méthode de journalisation ou de remplacer lestdout.write
méthode (bien que les gens suggèrent de ne pas en substituant les fonctions natives). - Je pensais à
printf()
avec divers format pratique les modificateurs de la chaîne de sortie. - Les réponses ci-dessous sont bonnes. En outre, si vous aussi vous souhaitez ajouter automatiquement les couleurs de votre standard Node.js de sortie, découvrez manakin.
Vous devez vous connecter pour publier un commentaire.
Deux nouvelles(1), construit dans les méthodes Chaîne de caractères.Le Prototype.padStart et Chaîne de caractères.Le Prototype.padEnd ont été introduites dans ES2017 (ES8) qui effectuer les fonctions de remplissage.
(1) nœud >= 8.2.1 (ou >= 7.5.0 si elle est exécutée avec l'option --harmonie drapeau)
Exemples de la mdn page:
Pour l'indentation d'un json sur la console essayez d'utiliser JSON.stringify. Le troisième paramètre fournit le retrait nécessaire.
--harmony
drapeau), car il est assez récent encore.Il n'y a rien construit en NodeJS pour ce faire. Le "plus proche" tu viendrais est
util.format
, qui n'est toujours pas faire grand chose malheureusement (référence).Vous aurez besoin de regarder dans d'autres modules pour offrir une plus vaste mise en forme de l'expérience. Par exemple: sprintf.
Sprintf-js permet à la fois de position (0, 1, 2) les arguments et les arguments nommés.
Quelques exemples de rembourrage et de l'alignement:
Résultats:
util.format
est mieux que rien. Mais, pas beaucoup mieux. 🙂 Si c'était juste une partie deconsole.log
... alors, il aurait plus de sens.Si les données tabulaires, puis la façon la plus simple serait de le faire avec
console.table
https://nodejs.org/dist/latest-v10.x/docs/api/console.html#console_console_table_tabulardata_properties
C'est le code.
Vous n'avez pas besoin de bibliothèques externes pour elle.
Voici un exemple de sortie. Vous avez seulement besoin de passer un tableau d'objet.
Non seulement en Nodejs, mais il fonctionne aussi en chrome.
https://developer.mozilla.org/en-US/docs/Web/API/Console/table
Si vous avez des besoins plus simples que vous pouvez regarder dans util.format. Il peut générer de la chaîne à partir de différents paramètres. Si vous voulez printf comme le formatage vous pouvez utiliser sprintf paquet ou sprintf-js paquet.
Vous aimerez aussi chaîne-kit et la borne de kit.
https://www.npmjs.com/package/string-kit
https://www.npmjs.com/package/terminal-kit
https://blog.soulserv.net/terminal-friendly-application-with-node-js-part-ii-moving-and-editing/
Prendre un coup d'oeil à Log4JS, qui est une tentative d'fonctionnelle port de Log4j