new Date().toJSON() 在 Javascript 中是否总是唯一的?

Will new Date().toJSON() always be unique in Javascript?

PouchDB Manual建议使用Date().toJSON()为每个文档生成一个新的id。所有 javascript 运行时是否保证 Date().toJSON() 始终是唯一的?

日期只有微秒精度,因此不能保证它们是唯一的。

下面的代码片段将在除最慢的运行时环境之外的所有环境中为您提供许多重复项:

for (let i = 0; i < 10; i++) {
  console.log(new Date().toJSON())
}

我认为 PouchDb 指南在该示例中提到了使用日期,以便文档按 date/time 顺序排列,但并不是说这样可以确保唯一性。在 the API 中,您可以看到,如果您不指定 ID,PouchDb 将为您创建一个唯一的 ID。

如果是分布式系统,我们也可以使用这个eventid模块。