gpt4 book ai didi

javascript - Angular/Javascript Luxon - 将时间戳更改时间转换为当前用户时区

转载 作者:行者123 更新时间:2023-12-02 23:23:18 27 4
gpt4 key购买 nike

我从数据库中获取了时间戳,我需要在用户时区中显示其时间。

例如:巴西 16:42,法国 21:42。

这是一次聊天,因此消息需要以每个用户的时区显示。

我有luxon在项目中,但在这种情况下我无法使用任何对我有帮助的文档。

我尝试过以某些方式使用这些方法

DateTime.local()DateTime.setZone(localZone)

localZone 是一个接收本地区域的变量,例如:“Europe/Paris”。

谢谢!

最佳答案

您可以简单地使用 luxon fromMillis解析时间戳(假设以毫秒为单位)或 fromSeconds如果是以秒为单位的话。您还可以传递 zone 选项来使用给定时区创建 luxon 对象。您可以使用 toFormat()以您想要的格式显示时间。你可以有类似下面的内容:

DateTime.fromMillis(timestamp, {zone: localZone}).toFormat('HH:mm')

如果需要,也可以使用setZone要更改区域属性,这里是使用示例数据的片段:

const DateTime = luxon.DateTime;
let curTimestamp = 1562061791000;
let time = DateTime.fromMillis(curTimestamp)
console.log('Local time:', time.toFormat('HH:mm') );
console.log('Brazil time:', time.setZone('America/Sao_Paulo').toFormat('HH:mm') );
console.log('France time:', DateTime.fromMillis(curTimestamp, {zone: 'Europe/Paris'}).toFormat('HH:mm') );
<script src="https://cdn.jsdelivr.net/npm/luxon@1.16.0/build/global/luxon.js"></script>

如果你想在 Angular View 中使用 Luxon,请查看 luxon-angular .

关于javascript - Angular/Javascript Luxon - 将时间戳更改时间转换为当前用户时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56841691/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com