javascript - 金额,保留两位小数,四舍五入
PHP中文网
PHP中文网 2017-04-11 09:09:21
0
3
410

问题:数字要保留两位小数,但是重写toFixed,大部分数据已经可以四舍五入,但是1.005类似的数据,四舍五入之后得到的数据是1.00,其实应该是1.01,求大神指点;

Number.prototype.toFixed = function (num) {

var changenum = (Number(this * Math.pow(10, num) + 0.5) / Math.pow(10, num)).toString(); index = changenum.indexOf("."); if (index < 0 && num > 0) { changenum = changenum + "."; for (i = 0; i < num; i++) { changenum = changenum + "0"; } } else { index = changenum.length - index; for (i = 0; i < (num - index) + 1; i++) { changenum = changenum + "0"; } } return changenum;

};

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous (3)
PHPzhong

1.005*100=100.5,Math.round四舍五入,得101再除100得1.01,能不能这样

    Peter_Zhu

    写的不大细

    将var reg = /.(d{3})d+$/;改为了var reg = /.(d{3})d*$/;
    num != Number改为num != 'number'

      迷茫
      function change(money){ if(typeof money != 'number')return -1; return (100*money).toFixed(0)/100; } console.log(change(3.005));
        Derniers téléchargements
        Plus>
        effets Web
        Code source du site Web
        Matériel du site Web
        Modèle frontal
        À propos de nous Clause de non-responsabilité Sitemap
        Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!