【发布时间】:2021-08-17 09:32:21
【问题描述】:
我将从前端收到一个字符串(带有时间和日期)。字符串格式是“2021-08-16T23:15:00.000Z”。我打算用输入字符串声明一个时刻对象,以及一个特定的时区(本地时区除外)。
import moment from "moment";
import "moment-timezone";
// The input string I receive from the frontend.
let strTime = "2021-08-16T23:15:00.000Z";
console.log(strTime); //2021-08-16T23:15:00.000Z
let time = moment.tz(strTime, "YYYY-MM-DDTHH:mm:ss.SSSZ","America/Boise");
console.log(time); // Moment<2021-08-16T17:15:00-06:00>, undesired value
let UTCtime = moment.utc(time);
console.log(UTCtime);
据我从this 问题中了解到的,console.log(time) 应该输出时间为 23:15:00 的时刻对象,但时区为“美国/博伊西”。
我打算time 拥有相同的时间,即“23:15:00.000”,时区为“美国/博伊西”。
因此,当我稍后将该时间转换为 UTC 时,我需要获得正确的值 w.r.t 时区“美国/博伊西”而不是我的本地时区。我该怎么做。
【问题讨论】: