[英]Moment.js decimals into time format
我试图将像1.25这样的小数格式化为如下格式。
我正在使用FullCalendar。
我要做的是从日历中删除事件,但将它们放回具有正确data-duration
属性的外部事件队列中。
1 -> 01:00
1.25 -> 01:15
1.5 -> 01:30
1.75 -> 01:45
等等
我将始终只在15分钟的间隔内工作。
moment.js有可能吗?
谢谢!
我认为,对于这个简单的目的而言,这将是一种过度杀伤力。 您可能希望使用vanilla 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)
- 在字符串中获取前两个字符;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.