javascript - 将 JS 中的日期从一个时区转换为另一个时区

标签 javascript date timezone

我想将具有特定时区的特定日期字符串转换为另一种格式的另一个时区。这是一个例子:

var date = '2020-04-09 17:10:57'; //Date in YYYY-MM-DD HH:MM:SS format
var timezone = 'America/New_York'; //Timezone of the given var date

现在我想将时区中的这个日期转换为另一个日期,例如我有:

var convert_to_timezone = 'Europe/Berlin';

我只知道如何获取当前用户的日期,但我不知道如何将具有该时区的日期准确转换为另一个日期。我也想尊重夏令时。

输出应该是:

//2020-04-09 23:10:57

预先感谢,您真的会帮助我找到答案,因为我尝试了 2 个小时但没有得到它:(

最佳答案

Luxon 是 Moment 的现代重写。如果您朝这个方向走,这里是工作代码:

var DateTime = luxon.DateTime;

var date = '2020-04-09 17:10:57';
var timezone = 'America/New_York';
var format = 'yyyy-MM-dd HH:mm:ss';

var luxonTime = DateTime.fromFormat(date, format, {zone: timezone});

var berlinTime = luxonTime.setZone('Europe/Berlin').toFormat(format);

console.log(berlinTime);
<script src="https://cdn.jsdelivr.net/npm/luxon@1.23.0/build/global/luxon.min.js"></script>

关于Luxon和Moment的区别:https://github.com/moment/luxon/blob/master/docs/why.md

关于javascript - 将 JS 中的日期从一个时区转换为另一个时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61111795/

相关文章:

java - 如何在android中获取相对于另一个时区的时间

javascript - 如何使用javascript将html插入文档

javascript - 如何使用基石解析 JavaScript 中的 DICOM?

javascript - 如何更改模拟导入的行为?

php - 通过下拉列表进行日期验证

sql - 如何在 postgresql 中返回日期值?

objective-c - 获取日期与 [NSDate date] 相差几个小时

java - 如何在 JVM 上解析时区字符串 "Pacific Time (US & Canada)"?

javascript - ASP.Net MVC(一)——如何传递JSON来查看而不是作为单独的ajax调用

mysql - 排序日期和序列号