Revision: 3570
Updated Code
at August 14, 2007 08:19 by section31
Updated Code
Number.extend({ /* Property: numberFormat Format a number with grouped thousands. Arguments: decimals, optional - integer, number of decimal percision; default, 2 dec_point, optional - string, decimal point notation; default, '.' thousands_sep, optional - string, grouped thousands notation; default, ',' Returns: a formatted version of number. Example: >(36432.556).numberFormat() // returns 36,432.56 >(36432.556).numberFormat(2, '.', ',') // returns 36,432.56 */ numberFormat : function(decimals, dec_point, thousands_sep) { decimals = Math.abs(decimals) + 1 ? decimals : 2; dec_point = dec_point || '.'; thousands_sep = thousands_sep || ','; var matches = /(-)?(\d+)(\.\d+)?/.exec((isNaN(this) ? 0 : this) + ''); // returns matches[1] as sign, matches[2] as numbers and matches[3] as decimals var remainder = matches[2].length > 3 ? matches[2].length % 3 : 0; return (matches[1] ? matches[1] : '') + (remainder ? matches[2].substr(0, remainder) + thousands_sep : '') + matches[2].substr(remainder).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep) + (decimals ? dec_point + (+matches[3] || 0).toFixed(decimals).substr(2) : ''); } });
Revision: 3569
Updated Code
at August 13, 2007 14:31 by section31
Updated Code
Number.extend({ /* Property: numberFormat Format a number with grouped thousands. Arguments: decimals, optional - integer, number of decimal percision; default, 2 dec_point, optional - string, decimal point notation; default, '.' thousands_sep, optional - string, grouped thousands notation; default, ',' Returns: a formatted version of number. Example: >(36432.556).numberFormat() // returns 36,432.56 >(36432.556).numberFormat(2, '.', ',') // returns 36,432.56 */ numberFormat : function(decimals, dec_point, thousands_sep) { var decimals = Math.abs(decimals) + 1 ? decimals : 2; var dec_point = dec_point || '.'; var thousands_sep = thousands_sep || ','; var matches = /(-)?(\d+)(\.\d+)?/.exec(this + ''); // returns matches[1] as sign, matches[2] as numbers and matches[3] as decimals var remainder = matches[2].length > 3 ? matches[2].length % 3 : 0; return (matches[1] ? matches[1] : '') + (remainder ? matches[2].substr(0, remainder) + thousands_sep : '') + matches[2].substr(remainder).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep) + (decimals ? dec_point + (+matches[3] || 0).toFixed(decimals).substr(2) : ''); } });
Revision: 3568
Updated Code
at August 13, 2007 14:13 by section31
Updated Code
Number.extend({ /* Property: numberFormat Format a number with grouped thousands. Arguments: decimals, optional - integer, number of decimal percision; default, 2 dec_point, optional - string, decimal point notation; default, '.' thousands_sep, optional - string, grouped thousands notation; default, ',' Returns: a formatted version of number. Example: >(36432.556).numberFormat() // returns 36,432.56 >(36432.556).numberFormat(2, '.', ',') // returns 36,432.56 */ numberFormat : function(decimals, dec_point, thousands_sep) { var decimals = Math.abs(decimals) + 1 ? decimals : 2; var dec_point = dec_point || '.'; var thousands_sep = thousands_sep || ','; var matches = /(-)?(\d+)(\.\d+)?/.exec(this + ''); // returns matches[1] as sign, matches[2] as numbers and matches[2] as decimals var remainder = matches[2].length > 3 ? matches[2].length % 3 : 0; return (matches[1] ? matches[1] : '') + (remainder ? matches[2].substr(0, remainder) + thousands_sep : '') + matches[2].substr(remainder).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep) + (decimals ? dec_point + (+matches[3] || 0).toFixed(decimals).substr(2) : ''); } });
Revision: 3567
Updated Code
at August 13, 2007 13:23 by section31
Updated Code
Number.extend({ /* Property: numberFormat Format a number with grouped thousands. Arguments: decimals, optional - integer, number of decimal percision; default, 2 dec_point, optional - string, decimal point notation; default, '.' thousands_sep, optional - string, grouped thousands notation; default, ',' Returns: a formatted version of number. Example: >(36432.556).numberFormat() // returns 36,432.56 >(36432.556).numberFormat(2, '.', ',') // returns 36,432.56 */ numberFormat : function(decimals, dec_point, thousands_sep){ var decimals = Math.abs(decimals) + 1 ? decimals : 2; var dec_point = dec_point || '.'; var thousands_sep = thousands_sep || ','; var matches = /(\d+)(\.\d+)?/.exec(this + ''); // returns matches[1] to numbers and matches[2] to decimals var remainder = matches[1].length > 3 ? matches[1].length % 3 : 0; return (remainder ? matches[1].substr(0, remainder) + thousands_sep : '') + matches[1].substr(remainder).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep) + (decimals ? dec_point + (+matches[2] || 0).toFixed(decimals).substr(2) : ''); }; });
Revision: 3566
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at August 13, 2007 12:40 by section31
Initial Code
Number.extend({ /* Property: numberFormat Format a number with grouped thousands. Arguments: decimals, optional - integer, number of decimal percision; default, 2 dec_point, optional - string, decimal point notation; default, '.' thousands_sep, optional - string, grouped thousands notation; default, ',' Returns: a formatted version of number. Example: >(36432.556).numberFormat() // returns 36,432.56 >(36432.556).numberFormat(2, '.', ',') // returns 36,432.56 */ numberFormat = function(decimals, dec_point, thousands_sep){ var decimals = Math.abs(decimals) + 1 ? decimals : 2; var dec_point = dec_point || '.'; var thousands_sep = thousands_sep || ','; var matches = /(\d+)(\.\d+)?/.exec(this + ''); // returns matches[1] to numbers and matches[2] to decimals var remainder = matches[1].length > 3 ? matches[1].length % 3 : 0; return (remainder ? matches[1].substr(0, remainder) + thousands_sep : '') + matches[1].substr(remainder).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep) + (decimals ? dec_point + (+matches[2] || 0).toFixed(decimals).substr(2) : ''); }; });
Initial URL
Initial Description
Format a number with grouped thousands
Initial Title
Mootools - numberFormat
Initial Tags
Initial Language
JavaScript