Nodejs Float Format toFixed(exponent)

Here you can find the source of toFixed(exponent)

Method Source Code

Number.prototype.toFixed = function(exponent) {
    if (exponent) {
        var result = (parseInt(this * Math.pow(10, exponent) + 0.5) / Math.pow(10, exponent)).toString();
        var count = 0;
        if (result.indexOf(".") > 0) {
            count = exponent - result.split(".")[1].length;
        } else {/* w  ww  . j ava 2  s  .c  o m*/
            count = exponent;
            result += ".";
        }

        for (count; count > 0; count--) {
            result += "0";
        }

        return result;
    } else {
        return parseInt(this);
    }
}

Related

  1. formatFloat(num, pos)
    function formatFloat(num, pos) {
      var size = Math.pow(10, pos);
      return Math.round(num * size) / size;
    
  2. toFix(digits)
    Number.prototype.toFix=function(digits){
        var f=parseInt(digits),
            n=Number(this),
            s=n.toString();
        var p=s.split(".");
        if(p[1]&&p[1].length>f){
            p[1]=p[1].substring(0,f);
            n=Number(p.join("."));
        }else{
    ...
    
  3. toFixed(d)
    Number.prototype.toFixed = function (d) {
        var s = this + "";
        if (!d) d = 0;
        if (s.indexOf(".") == -1) s += ".";
        s += new Array(d + 1).join("0");
        if (new RegExp("^(-|\\+)?(\\d+(\\.\\d{0," + (d + 1) + "})?)\\d*$").test(s)) {
            var s = "0" + RegExp.$2, pm = RegExp.$1, a = RegExp.$3.length, b = true;
            if (a == d + 2) {
                a = s.match(/\d/g);
    ...
    
  4. toFixed10(precision)
    Number.prototype.toFixed10 = function(precision) {
        return Math.round10(this, -precision).toFixed(precision);
    
  5. toFixedBtoFixed ( precision )
    Number.prototype.toFixedB = function toFixed ( precision ) {
        var multiplier = Math.pow( 10, precision + 1 ),
            wholeNumber = Math.floor( this * multiplier );
        return (Math.round( wholeNumber / 10 ) * 10 / multiplier).toFixed(precision);
    
  6. toFixedDown(digits)
    Number.prototype.toFixedDown = function(digits) {
        var n = this - Math.pow(10, -digits)/2;
        n += n / Math.pow(2, 53); 
        return n.toFixed(digits);
    
  7. toFixedDown(digits)
    Number.prototype.toFixedDown = function(digits) {
      var re = new RegExp('(\\d+\\.\\d{' + digits + '})(\\d)'),
          m = this.toString().match(re);
      return m ? parseFloat(m[1]) : this.valueOf();
    };