在JavaScript中舍入到最接近的0.05 [英] Rounding up to the nearest 0.05 in JavaScript

查看:62
本文介绍了在JavaScript中舍入到最接近的0.05的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问题

有没有人知道如何在JavaScript中将浮点数舍入到最接近的0.05?

Question
Does anyone know of a way to round a float to the nearest 0.05 in JavaScript?

示例

BEFORE | AFTER
  2.51 | 2.55
  2.50 | 2.50
  2.56 | 2.60

当前代码

var _ceil = Math.ceil;
Math.ceil = function(number, decimals){
    if (arguments.length == 1)
    return _ceil(number);

    multiplier = Math.pow(10, decimals);
    return _ceil(number * multiplier) / multiplier;
}

然后在其他地方......
返回(Math.ceil((金额 - 0.05),1)+ 0.05).toFixed(2);

Then elsewhere... return (Math.ceil((amount - 0.05), 1) + 0.05).toFixed(2);

导致... 。

BEFORE | AFTER
  2.51 | 2.55
  2.50 | 2.55
  2.56 | 2.65


推荐答案

乘以20,然后除以20:

Multiply by 20, then divide by 20:

(Math.ceil(number*20)/20).toFixed(2)

这篇关于在JavaScript中舍入到最接近的0.05的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆