extsprintf
extsprintf: extended POSIX-style sprintf
Stripped down version of s[n]printf(3c). We make a best effort to throw an exception when given a format string we don't understand, rather than ignoring it, so that we won't break existing programs if/when we go implement the rest of this.
This implementation currently supports specifying
field alignment ('-' flag),
zero-pad ('0' flag)
always show numeric sign ('+' flag),
field width
conversions for strings, decimal integers, and floats (numbers).
argument size specifiers. These are all accepted but ignored, since Javascript has no notion of the physical size of an argument.
Everything else is currently unsupported, most notably: precision, unsigned numbers, non-decimal numbers, and characters.
Besides the usual POSIX conversions, this implementation supports:
%j
: pretty-print a JSON object (using node's "inspect")%r
: pretty-print an Error object
Example
First, install it:
Now, use it:
outputs:
Also supported
printf: same args as sprintf, but prints the result to stdout
fprintf: same args as sprintf, preceded by a Node stream. Prints the result to the given stream.
Last updated