Ich wollte eine Ausgabeformatierung (Sprintf-Typ-Funktionalität) in node.js durchführen, aber bevor ich sie selbst schreibe, habe ich mich gefragt, ob etwas Ähnliches eingebaut ist (ich habe die Dokumente ohne Erfolg durchsucht) oder ob jemand bereits ein Modul geschrieben hat.
Danke vielmals
Antworten:
Es gibt jetzt
printf
ähnliche Unterstützung inutil.format()
.Beispiel:
util.format('hello %s', 'world'); // Returns: 'hello world'
quelle
util.format
sehr, sehr einfach: nein%5d
oder so%5.3f
etwas, daher ist essprintf
leider keine echte Lösung.var printf = require('util').format
.var a = 1.234567;a.toFixed(3)
=>>'1.235'
util.format
unterstützt das (zBrequire('util').format("blarf_%04d", 42);
) ab Version 10.5.0 nicht.Es gibt einige in der npm-Registrierung, die tatsächliche
sprintf
Implementierungen sind, dautil.format
sie nur eine sehr grundlegende Unterstützung haben.sprintf(jetzt veraltet)quelle
sprintf(" %s %s", title.grey, colors['blue'](msg)) ' \x1B[90mTitle\x1B[39m \x1B[34mMessage\x1B[39m'
Hier ist die Javascript-Version von
sprintf
:http://phpjs.org/functions/sprintf:522
quelle
console.log
funktioniert gut.console.log('%d hours', 4); // 4 hours console.log('The %2$s contains %1$d monkeys', 4, 'tree'); // The tree contains 4 monkeys
quelle
console.log('The %s contains %d monkeys', 'tree', 4);
in Knoten v0.10.26.printf
, nichtsprintf
.`es6 template ${format}`