libs/web: add %m pattern to String.format()
This commit is contained in:
parent
9836e949a5
commit
a8688343d6
1 changed files with 15 additions and 1 deletions
|
@ -907,7 +907,7 @@ if( ! String.format )
|
|||
|
||||
var str = arguments[0];
|
||||
var out = '';
|
||||
var re = /^(([^%]*)%('.|0|\x20)?(-)?(\d+)?(\.\d+)?(%|b|c|d|u|f|o|s|x|X|q|h|j|t))/;
|
||||
var re = /^(([^%]*)%('.|0|\x20)?(-)?(\d+)?(\.\d+)?(%|b|c|d|u|f|o|s|x|X|q|h|j|t|m))/;
|
||||
var a = b = [], numSubstitutions = 0, numMatches = 0;
|
||||
|
||||
while( a = re.exec(str) )
|
||||
|
@ -1026,6 +1026,20 @@ if( ! String.format )
|
|||
: String.format('%dh %dm %ds', th, tm, ts);
|
||||
|
||||
break;
|
||||
|
||||
case 'm':
|
||||
var mf = pMinLength ? parseInt(pMinLength) : 1000;
|
||||
var pr = pPrecision ? Math.floor(10*parseFloat('0'+pPrecision)) : 2;
|
||||
|
||||
var i = 0;
|
||||
var val = (param || 0);
|
||||
var units = [ '', 'K', 'M', 'G', 'T', 'P', 'E' ];
|
||||
|
||||
for (i = 0; (i < units.length) && (val > mf); i++)
|
||||
val /= mf;
|
||||
|
||||
subst = val.toFixed(pr) + ' ' + units[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue