var res=“03/19/2020 13:15:00”;//美国东部时间
当我转换为本地时区时
moment(moment(res.date, 'MM/DD/YYYY HH:mm:ss').utc()).local().format("MM DD YYYY HH:mm:ss")
我尝试了很多东西。但我不知道如何在 JavaScript 中将东部日期时间转换为本地日期时间。
最佳答案
大概 EST 是美国东部标准时间,即 GMT+5。该时区内的大多数地方也遵守夏令时,因此您可能需要确定要使用哪一组规则。偏移量应该与时间戳的其余部分一起传递,以将其作为错误源删除。
时区偏移通常表示为添加到 UTC 以获得本地时间的时间,尽管 ECMAScript(和其他编程语言)相反,即从 UTC 中减去时间以获得本地时间。
如果时间戳的偏移量已知,则可以将字符串解析为 UTC,然后应用偏移量,然后使用普通方法根据主机系统设置获取本地值,例如
// Offset in minutes, +ve east
function parseWithOffset(s, offset) {
let b = s.split(/\D/);
let d = new Date(Date.UTC(b[2], b[0]-1, b[1], b[3], b[4], b[5]));
d.setUTCMinutes(d.getUTCMinutes() - offset);
return d;
}
let s = '03/19/2020 13:15:00'; // US EST
let d = parseWithOffset(s, -300);
console.log(d.toString());
关于javascript - 如何使用 JavaScript 中的 moment.js/Date 将 EST 时间数据转换为本地时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60756559/