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

为何Firestore的FieldValue.serverTimestamp()纳秒部分总是以0000结尾?

Firestore 服务器时间戳的纳秒精度问题
  • FieldValue.serverTimestamp()的纳秒部分是否总是以"0000"结尾?
    是的,它的纳秒部分必然以"0000"结尾。因为Firestore的服务器时间戳本质是微秒级精度,存储时会将微秒值乘以1000转换为纳秒格式,所以最后四位固定为0。例如,若服务器生成的时间是1620000000123456微秒,转成纳秒后就是1620000000123456000,末尾四位为0000。

  • Firestore的服务器时间戳是否提供真正的纳秒级分辨率?
    不提供。Firestore底层仅支持微秒级的时间精度,所谓的纳秒表示只是微秒值的三位扩展,实际没有纳秒级的区分能力。即便你手动传入带有非零纳秒部分的时间戳,Firestore在存储时也会自动截断到微秒级别,丢弃多余的纳秒信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 18:04:51