javascript - 如何将 Firestore 日期/时间戳转换为 JS Date()?

标签 javascript firebase google-cloud-firestore

我正在尝试将下面的日期转换为 javascript Date() 对象。当我从服务器取回它时,它是一个 Timestamp 对象,

Firebase Firestore 控制台的屏幕截图:

enter image description here

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

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

我得到这个输出: enter image description here

显然,时间戳都是不同的,并且并非都是 2018 年 9 月 9 日(恰好是今天)的同一日期。我也不确定为什么 new Date(Timestamp) 会导致无效日期。我是一个 JS 新手,我在日期或时间戳方面做错了什么吗?

最佳答案

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

如果您想将 Timestamp 转换为 Date,请使用 toDate() Timestamp 上的方法。

关于javascript - 如何将 Firestore 日期/时间戳转换为 JS Date()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52247445/

相关文章:

java - Firebase - Firestore 数据查询调用两次两次

google-cloud-firestore - 如何检查是否只有一个特定字段使用 Firestore 规则进行了更新?

javascript - 如果使用格式化程序进行显示,如何对 bootstrap-vue 中的日期列进行排序?

javascript - 在对话框按钮上使用 ui-disabled

java - 无法将 getDownloadUrl() 的响应保存到变量

javascript - 如何获取 Angular 函数之外的变量值

javascript - 使用 onClick 事件处理程序时不断调用自身

javascript - 使用 Observables 将函数转换为在 Angular 2 应用程序中使用传入变量

javascript - 在重新加载动态内容后统一调整一组按钮的大小

javascript - Angular - Uncaught ReferenceError : global is not defined with firebase