momentjs diff 函数的时差错误

Wrong time difference with momentjs diff function

我正在尝试使用 angular-momentjs 计算两个 UTC 日期时间字符串之间的差异,如下所示:

var start = "1970-01-01T11:03:00.000Z";
var end = "1970-01-01T11:15:00.000Z";

var duration = $moment.utc($moment(end).diff($moment(start))).format("hh:mm");

当我执行上面的代码时,持续时间应该是 00:12 但实际上它是 12:12。我不明白为什么以及如何解决它。

您实际上是在为 1970-01-01T00:12:00.000Z 创建一个 moment.js 对象,然后获取时间作为小时和分钟。令牌 "hh" 表示 12 小时时间,因此您看到“12”表示凌晨 12 点。如果您想查看 00:12,请使用提供 24 小时时间的标记 "HH":00:12.