使用时刻js来围绕给定的分钟数

时间:2017-08-24 13:06:19

标签: javascript momentjs

如果我有分钟数,比如476,等于7小时56分钟,我需要将这个数字四舍五入到最接近的半小时,所以在这种情况下我需要将476舍入为8,这样它就等于8小时。我怎么能在时刻js做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以使用以下逻辑:

逻辑:

  • 将分钟数除以60得到总小时数。
  • 使用mins % 60获取剩余时间。
    • 如果mins介于1545之间,我们可以将其四舍五入为30
    • 如果小于15或大于45, we can round it to 0`。
    • 如果mins大于或等于45,我们会将小时数递增1.



function getTime(min){
  var hours = Math.floor(min/60);
  var mins = min % 60;
  console.log('remainder mins: ', mins)
  if(mins >= 15 && mins < 45)
    mins = 30;
  else{
    hours += mins > 45 ? 1 : 0;
    mins = 0;
  }
  return "" + hours + (mins ? ":" + mins : "");
}

console.log(getTime(476))
console.log(getTime(446))
console.log(getTime(426))
console.log(getTime(576))
&#13;
&#13;
&#13;