Moment.js小数转换为时间格式



我正在尝试将1.25这样的小数格式化为如下格式。

我正在使用FullCalendar。

我要做的是从日历中删除事件,但将它们放回具有适当data-duration属性的外部事件队列中。

1 -> 01:00
1.25 -> 01:15
1.5 -> 01:30
1.75 -> 01:45

等等。

我永远只工作15分钟。

moment.js有可能做到这一点吗?

谢谢!

我认为momentjs对于这个简单的目的来说是一种过度使用。你可能想使用香草JS来获得以这种方式格式化的小数

function parse(num) {
    return ('0' + Math.floor(num) % 24).slice(-2) + ':' + ((num % 1)*60 + '0').slice(0, 2);
}
parse(24.5) -> '00:30'
parse(1.25) -> '01:15'
parse(1.5) -> '01:30'
parse(1.75) -> '01:45'

一些解释:

Math.floor(num) % 24-获取小时数

'0'+ Math.floor(num) % 24-将数字强制转换为具有前导零的字符串

('0' + Math.floor(num) % 24).slice(-2)-获取字符串中的最后两个字符

(num % 1)-将分钟数作为小数部分的一部分

(num % 1)* 60 + '0'-强制到分钟,其后为零

(num % 1)*60 + '0').slice(0, 2)-获取字符串中的前两个字符;

相关内容

  • 没有找到相关文章

最新更新