我有一个非常简单的问题,但找不到好的简单DRY解决方案。我想将小时数转换为HH:MM
格式。我对Moment.js的尝试是:
var hours = 10.5
var hour_string = moment(hours*3600*1000).format('HH:MM')
但不幸的是我得到了:
"11:01"
并且不知道为什么。当然,我想要的结果是"10:30"
。
我想以最简单的方式做到这一点,就像我在Rails中所做的那样:
Time.at(hours*3600).utc.strftime("%H:%M")
有什么想法吗?
答案 0 :(得分:8)
好的,我找到了原因。 "MM"
表示月份,而不是分钟,"mm"
。时移是由时区引起的,我们可以使用utc
函数省略。最终的解决方案是:
moment.utc(hours*3600*1000).format('HH:mm')