MomentJS有时会添加错误的小时数

时间:2019-06-23 23:40:50

标签: javascript angular time momentjs

所以我只是想实现一项功能,我将X.X的小时数增加到24小时。问题是时间00:00,添加的小时数不正确

我编写的代码大部分都是有效的。它适用于除0:00以外的所有可能时间。 如果我有01:30并且我加了1h,它将给我02:30。如果我有02:30并加上1.5h,那么我会得到04:00。

所以这是一个问题。当我有00:00并且我加1h时我得到01:06 ...似乎毫无意义,我希望有更多momentJS经验的人对此事有想法或想法。这是代码

如果我有00:00并且有3.5,我得到03:06。当我从00:00开始时,这似乎只会发生。有点让我发疯

console.log(timesheetRows[i][p]); //prints 0:00
console.log(Number(hours)); // prints 1
timesheetRows[i][p] = moment.utc(timesheetRows[i][p], 'hh:mm').add(Number(hours), 'hours').format('HH:MM');

1 个答案:

答案 0 :(得分:3)

您使用了错误的格式,hh代表12个小时,MM代表两位数的月份数字。

使用类似这样的内容:

moment.utc(timesheetRows[i][p], 'HH:mm').add(Number(hours), 'hours').format('HH:mm');