Skip to content

Instantly share code, notes, and snippets.

@cbertelegni
Last active December 28, 2016 22:09
Show Gist options
  • Save cbertelegni/6513674 to your computer and use it in GitHub Desktop.
Save cbertelegni/6513674 to your computer and use it in GitHub Desktop.
Extensión de la clase Number para dar formato a los números.

Extensión de la clase Number para dar formato a los números en Javascript.

Forma de uso:

var n = 15425.56;
var output = n.format(2, ",", ".");
alert(output); // el resultado es "15.425,56"
Number.prototype.format = function(c, d, t){
var n = this;
c = isNaN(c = Math.abs(c)) ? 2 : c;
d = d === undefined ? "." : d;
t = t === undefined ? "," : t;
var s = n < 0 ? "-" : "",
i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "",
j = (j = i.length) > 3 ? j % 3 : 0;
var nn = 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) : "");
return nn;
};
<html>
<head>
<title>Ejemplo de formato de números</title>
<script type="text/javascript" src="format_number.js"></script>
</head>
<body>
<script type="text/javascript">
var n = 15425.56;
var output = n.format(2, ",", ".");
var output_2 = n.format(n % 1 === 0 ? null : 2, ",", ".");
var output_3 = n.format(0, ",", ".");
alert(output); // "15.425,56"
alert(output_2); // "15.425,56"
alert(output_3); // "15.425"
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment