我有一个场景,用户可以按下按钮启动秒表,然后再次按下它以停止它。但是有一个转折点 - 结束时间需要以15分钟的步长进行四舍五入。例如。如果开始时间为08:13
且结束时间为08:16
,则需要将其向上舍入为08:28
。或者,如果时间间隔超过15分钟,例如08:31
,则需要将其向上舍入为08:43
。
你们是否有任何关于如何解决这种情况的指示?如果我要求的内容过于复杂,我该如何向上和向下舍入到最近的15分钟(分别)。
答案 0 :(得分:5)
这似乎很简单:
var interval = 15 * 60 * 1000, // 15 minutes in miliseconds
roundedTime = new Date(startTime + (Math.ceil((endTime - startTime) / interval) * interval));
其中startTime
和endTime
是Date
个对象。