Moment.js 没有以微秒为单位格式化时间

问题描述

我正在使用 moment.js 来格式化日期时间值,如下所示:

time = moment(this.params['timeValue']).format("HHmmss.SSS")

这里,this.params['timeValue'] 是一个字符串。示例值为 2020-02-05 10:00:00.123 。使用 moment 格式化返回值 100000.123。有时我的日期时间值会变为微秒值,但 moment js 似乎将格式化的值削减到毫秒级别。例如格式化 2020-02-05 10:00:00.123456 返回 100000.123。我试过这个,但没有用:

time = moment(this.params['timeValue']).format("HHmmss.SSSSSS")

你能帮我处理以微秒为单位的日期时间值的格式吗?如果 moment.js 不处理它,还有其他我可以使用的库吗?

解决方法

Moment.js 包装了原生日期类型,它可以降到只有毫秒。您只会得到前三位数字,moment.js documentation 显示了小数秒的示例(根据您的第二个代码片段),但还提到它只会显示 3 位有效数字,其余部分用零填充。

查看 this SO question 以了解有关 JavaScript 中微秒的更多信息。