在我的应用程序后端是应用用户时区和发送格式化日期到UI。但当我将字符串转换为date对象时。它正在转换为用户的系统时区。如何将日期字符串更改为特定的时区时间对象,而不是用户系统时区。
我在使用时区库。
为了前夫。07/26/2022 07:01:14 AM已经在GMT-5中了,但是当我使用moment(new Date(dateString))将它转换成矩对象时,它正在将它转换为用户系统时区。
如何将其转换为用户定义的时区,即GMT-5?
发布于 2022-07-26 11:50:05
我只是把它搅起来了--不使用动量,因为它不再被维护
const input = "07/26/2022 07:01:14 AM"
const date= new Date(input);
// VVVVVV timezone fix
date.setMinutes(date.getMinutes() - date.getTimezoneOffset() + 5 * 60);
// date is now "07/26/2022 07:01:14 AM GMT-5"
// the following is just to show it's right
const verifyDate = new Intl.DateTimeFormat(navigator.language, {
dateStyle: 'full',
timeStyle: 'full',
timeZone: 'America/Bogota' // just picking a GMT-5 zone at random
}).format(date);
console.log(verifyDate)
// at this point
https://stackoverflow.com/questions/73122514
复制相似问题