Here you can find the source of formatAmount(c, d, t)
/*/*from w w w . j a va 2s. c om*/ http://stackoverflow.com/questions/149055/how-can-i-format-numbers-as-money-in-javascript [a number of the solutions on this page don't work] */ Number.prototype.formatAmount=function(c, d, t) { var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, // decimal places d = d == undefined ? "." : d, // dot delimiter t = t == undefined ? "," : t, // comma delimiter s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0; return s + "?" + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ""); };
Number.prototype.formatNum = function(n, x, s, c) { var re = '\\d(?=(\\d{' + (x || 3) + '})+' + (n > 0 ? '\\D' : '$') + ')', num = this.toFixed(Math.max(0, ~~n)); return (c ? num.replace('.', c) : num).replace(new RegExp(re, 'g'), '$&' + (s || ',')); };
Number.prototype.formatNumber = function() { var a = Math.abs(this).toString().split(''); v = ''; var n = 0; while (a.length > 0) { if (n>0 && n%3 == 0) v = '.' + v; v = a.pop() + v; n ++; ...
Number.prototype.formatNumber = function(c, d, t){ var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "." : d, t = t == undefined ? "," : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0; return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ""); ...
Number.prototype.formatNumber = function(c, d, t) { var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "," : d, t = t == undefined ? "." : t, s = n < 0 ? "-" : "", i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0; return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
Number.THOUSAND_STEP = ","; Number.DECIMAL_POINT = "."; Number.prototype.format = function(thousandSep, decPoint) { var decimal, str; thousandSep = thousandSep || Number.THOUSAND_STEP; decPoint = decPoint || Number.DECIMAL_POINT; decimal = this.toString().split("."); str = Math.abs(this) .toFixed(0) ...
Number.prototype.formatBytes = function() { var units = ['Bytes', 'KBytes', 'MBytes', 'GBytes'], bytes = this, i; for (i = 0; bytes >= 1024 && i < 3; i++) { bytes /= 1024; return bytes.toFixed(2) + ' ' + units[i]; }; ...
Number.prototype.formatComma = function() { var n = this; var thouSeparator = thouSeparator == undefined ? "," : thouSeparator; var sign = n < 0 ? "-" : ""; var i = parseInt(n = Math.abs(+n || 0)) + ""; var j = (j = i.length) > 3 ? j % 3 : 0; return sign + (j ? i.substr(0, j) + thouSeparator : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thouSeparator); };
Number.prototype.formatCustom = function(c, d, t){ var n = this, c = isNaN(c = Math.abs(c)) ? 2 : c, d = d == undefined ? "." : d, t = t == undefined ? "," : t, s = n < 0 ? "-" : "", i = String(parseInt(n = Math.abs(Number(n) || 0).toFixed(c))), j = (j = i.length) > 3 ? j % 3 : 0; return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : ""); ...
Number.prototype.formatDecimal = function() { var nStr = this.toFixed(2); x = nStr.split('.'); x1 = x[0]; x2 = x.length > 1 ? '.' + x[1] : ''; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, '$1' + ',' + '$2'); return x1 + x2; };