You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用MomentJS生成含6位毫秒的指定格式当前时间?

解决MomentJS生成6位微秒时间格式的问题

嘿,我来帮你搞定这个时间格式的问题!

你遇到的核心问题是格式符用错了——MomentJS里并没有ms这个用来表示毫秒/微秒的格式令牌,你之前写的YYYY-MM-DDThh:mm:ss.ms自然得不到想要的6位数值。

正确的实现方法

要生成2018-12-10T02:12:13.008391这种带6位微秒的ISO格式时间,你需要用SSSSSS作为小数部分的格式符:

var moment = require('moment');
// 注意:如果需要24小时制请用HH,12小时制才用hh
var datetime = moment().format('YYYY-MM-DDTHH:mm:ss.SSSSSS');
console.log(datetime);

为什么这样有效?

  • MomentJS里的S系列格式符对应时间的毫秒/微秒部分:
    • S:1位毫秒(0-9)
    • SS:2位毫秒(00-99)
    • SSS:3位毫秒(000-999)
    • SSSSSS:6位微秒级数值(前3位是毫秒,后3位是微秒)
  • 如果你的运行环境(比如Node.js高版本、现代浏览器)支持高精度时间,Moment会自动获取真实的微秒值;如果不支持,它会自动补0到6位,保证格式符合要求。

额外提醒

你之前用的hh是12小时制的小时格式(01-12),如果你的需求是24小时制(比如例子里的02:12是凌晨两点),记得换成HH(00-23)哦。

内容的提问来源于stack exchange,提问作者Dev1ce

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:22:26