【发布时间】:2020-03-04 16:09:43
【问题描述】:
我正在使用 boomi 中间件,所以不能使用像 moment js 这样的库,它有我可以使用的解决方案,如下所示:
function toTimeZone(time, zone) {
var format = 'YYYY/MM/DD HH:mm:ss ZZ';
return moment(time, format).tz(zone).format(format);
}
我会收到的
- 中间件中的日期为“yyyy-MM-dd HH:mm:ss”
- 日期不是 UTC。根据发起请求,我知道该日期的时区,可能是 America/New_York (EST) 或 America/Los_Angeles (PST) 等
如何将此日期时间转换为 UTC?
这就是我想要做的事情
var myDate = new Date("2020-02-27 11:19:00").toDateString("en-US", {timeZone: "America/Los_Angeles"});
document.write(myDate + '<br>'); //.toDateString() toLocaleString
myDate = new Date(myDate);
document.write(myDate.getFullYear() + "-" + (myDate.getMonth() + 1) + "-" + myDate.getDate() +
" " + myDate.getHours() + ":" + myDate.getMinutes() + ":" + myDate.getSeconds());
这将导致以下结果。我已经失去了我的时间。
Thu Feb 27 2020
2020-2-27 0:0:0
【问题讨论】:
-
您从哪里获得请求中的时区?那套在哪里?
-
我真的很想尝试一下,因为这并不容易自己做到
-
根据站点,我们知道它的时区。我不能在 BOOMI 上使用 moment.js 等。
-
花了一些时间后,我将采用不同的解决方案,我现在正在处理 C# 微服务中的日期,其中获取偏移量要简单得多。
标签: javascript