如何将Firestore日期/Timestamp转换为JS日期()?

13 浏览
0 Comments

如何将Firestore日期/Timestamp转换为JS日期()?

我正在试图将下面的日期转换为JavaScript Date()对象。当我从服务器收到它时,它是一个Timestamp对象,

Firebase Firestore控制台截图:

\"输入图像描述\"

当我尝试对从firestore返回的对象列表执行以下操作时:

  list.forEach(a => {
    var d = a.record.dateCreated;
    console.log(d, new Date(d), Date(d))
  })

我得到了这个输出:

\"输入图像描述\"

显然,时间戳都不同,并非全部是2018年9月9日(今天)。我也不确定为什么new Date(Timestamp)结果是无效日期。我有点新手,是否在日期或时间戳方面做错了什么?

admin 更改状态以发布 2023年5月23日
0
0 Comments

你可以使用 toDate() 函数与 toDateString() 一起仅显示日期部分。

const date = dateCreated.toDate().toDateString()
//Example: Friday Nov 27 2017

假设你只想要时间部分,则使用 toLocaleTimeString()

const time = dateCreated.toDate().toLocaleTimeString('en-US')
//Example: 01:10:18 AM, the locale part 'en-US' is optional

0
0 Comments

JavaScript的Date构造函数对Firestore的Timestamp对象一无所知 — 它不知道该怎么处理它们。

如果想将Timestamp转换成Date,可以使用TimestamptoDate()方法。

0