Skip to content

Instantly share code, notes, and snippets.

@kvalexandr
Created January 13, 2016 21:56
Show Gist options
  • Save kvalexandr/832abb69560e40fbc5ee to your computer and use it in GitHub Desktop.
Save kvalexandr/832abb69560e40fbc5ee to your computer and use it in GitHub Desktop.
function number_format(number, decimals, dec_point, thousands_sep) {
var i, j, kw, kd, km;
// input sanitation & defaults
if (isNaN(decimals = Math.abs(decimals))) {
decimals = 2;
}
if (dec_point == undefined) {
dec_point = ",";
}
if (thousands_sep == undefined) {
thousands_sep = ".";
}
i = parseInt(number = (+number || 0).toFixed(decimals)) + "";
if ((j = i.length) > 3) {
j = j % 3;
} else {
j = 0;
}
km = (j ? i.substr(0, j) + thousands_sep : "");
kw = i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + thousands_sep);
kd = (decimals ? dec_point + Math.abs(number - i).toFixed(decimals).replace(/-/, 0).slice(2) : "");
return km + kw + kd;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment