我们应用程序中的日期格式
Date format in our Application
谁能告诉我在我的数据库中存储日期的正确格式。
假设如果客户端和服务器在同一个区域,我们可以使用unix纪元时间戳或日期字符串。但是如果服务器在美国而客户端来自亚洲,我知道有人说 UTC 自动转换来自特定区域的日期。但是我无法通过 Node js 将 UTC 存储在 MongoDB 中,也许我用错了方式。
。目前我存储 "09-02-2021" 作为日期和 1612837056077 时间戳。我也是从前面得到时间end.Also,我对上面的东西不太确定。有人可以解释在实际应用程序中使用日期和时间的正确方法吗?如果可能的话,给我看一个 node js 和 mongoose 的快速演示
谢谢大家:)
UTC 是正确的选择。我不知道您所说的“但我无法通过 Node js 将 UTC 存储在 MongoDB”是什么意思。像这样创建您的模式:
const client_schema = new mongoose.Schema({
...
...
date_created: {type: Date, default: Date.now},
...
...
});
和date_created
将始终以UTC格式存储。从 UTC,您可以将其转换为任何时区。这只是一个使用 moment 的例子,说明如何将 UTC 转换为东部时区:
const d = moment(utc_date).utcOffset(moment(utc_date).tz("America/New_York").format('Z'), true).toDate();
注意:moment
正在逐步淘汰,不再推荐用于新项目。
谁能告诉我在我的数据库中存储日期的正确格式。
假设如果客户端和服务器在同一个区域,我们可以使用unix纪元时间戳或日期字符串。但是如果服务器在美国而客户端来自亚洲,我知道有人说 UTC 自动转换来自特定区域的日期。但是我无法通过 Node js 将 UTC 存储在 MongoDB 中,也许我用错了方式。
。目前我存储 "09-02-2021" 作为日期和 1612837056077 时间戳。我也是从前面得到时间end.Also,我对上面的东西不太确定。有人可以解释在实际应用程序中使用日期和时间的正确方法吗?如果可能的话,给我看一个 node js 和 mongoose 的快速演示
谢谢大家:)
UTC 是正确的选择。我不知道您所说的“但我无法通过 Node js 将 UTC 存储在 MongoDB”是什么意思。像这样创建您的模式:
const client_schema = new mongoose.Schema({
...
...
date_created: {type: Date, default: Date.now},
...
...
});
和date_created
将始终以UTC格式存储。从 UTC,您可以将其转换为任何时区。这只是一个使用 moment 的例子,说明如何将 UTC 转换为东部时区:
const d = moment(utc_date).utcOffset(moment(utc_date).tz("America/New_York").format('Z'), true).toDate();
注意:moment
正在逐步淘汰,不再推荐用于新项目。