繁体   English   中英

Javascript:我应该在这里使用什么来实现我的价值(圆形、地板、天花板)

[英]Javascript: What should I use here to achieve my value (round,floor,ceil)

我有不同的价值,比如

5.5
13.56
45.70
58.89 (never go more than 60)
and many more ...

假设它们是分钟。 我希望他们的输出在最近的 15 个分区中,例如

5.5 => 0
13.56 => 15
45.70 => 45
58.89 => 60

但我不确定如何实现这种四舍五入的输出。 请帮我...

没有内置方法可以实现这一点,但是您可以将数字除以 15,然后使用round()舍入到最接近的整数,最后乘以 15 以获得实际值:

var a = 13.56;
var dividedBy15 = a / 15;    // result is 0.904
var dividedAndRounded = Math.round(dividedBy15);   // result is 1
var finalResult = dividedAndRounded * 15;   // result is 15

另外一个选项:

function roundToFifteen(num) {
  var mod = num % 15;

  if (mod < 7.5) {
    return num - mod;
  } else {
    return num + (15 - mod);
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM