Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ( function() {
- function plus(n, f) {
- return (n > 0 && f && /\+/.test(f) ? '+' : '') + n;
- }
- sprintf = function() {
- var i = 1, a = arguments, s = a[0], q;
- return s.replace( /%(?:%|([-+0]+)?(\d*)?(?:\.(\d*))?([a-z]))/gi, function(m, f, w, p, t) {
- if (m == '%%') {
- return '%';
- }
- q = a[i++];
- if (t == 'd') {
- q = plus( Math.round(q), f );
- }
- else if (t == 'f') {
- q = plus( q.toFixed(p || 6), f );
- }
- else if (t == 's') {
- q += '';
- q = p ? q.substr(0, p) : q;
- }
- else {
- return m;
- }
- if (w) {
- q = strPad( q, w, /0/.test(f) ? '0' : ' ', /-/.test(f) ? 'right' : 'left' );
- }
- return q;
- } );
- };
- } )();
- // http://ru.wikipedia.org/wiki/Printf
- // > sprintf( 'Температура воздуха: %+d°C', rand(-50, 50) );
- // "Температура воздуха: -38°C"
- // > sprintf( 'Температура воздуха: %+d°C', rand(-50, 50) );
- // "Температура воздуха: +19°C"
Advertisement
Add Comment
Please, Sign In to add comment