Javascript 使用momentjs更正时区
我目前正试图根据发送“错误”时间的API调整时区 例如:Javascript 使用momentjs更正时区,javascript,momentjs,Javascript,Momentjs,我目前正试图根据发送“错误”时间的API调整时区 例如: serverTimestamp = '2020-04-23T15:00:00.000+0000' serverTimezone = 'America/New_York' 实际服务器时区为“美国/洛杉矶” 服务器时间戳是太平洋时间上午8点,但时区显示是纽约时间。 使用momentJs,我如何将serverTimestamp转换为UTC时间的正确时间(纽约时间上午8点)?我们可以使用moment.js根据我们的要求调整时区 使用moment
serverTimestamp = '2020-04-23T15:00:00.000+0000'
serverTimezone = 'America/New_York'
实际服务器时区为“美国/洛杉矶”
服务器时间戳是太平洋时间上午8点,但时区显示是纽约时间。
使用momentJs,我如何将
serverTimestamp
转换为UTC时间的正确时间(纽约时间上午8点)?我们可以使用moment.js
根据我们的要求调整时区
使用moment.tz.setDefault(“GMT”)代码>用于更改默认日期选择器的时区
时间戳实际上是GMT/UTC(+0000)。美国东部标准时间和太平洋标准时间每小时波动一次,这取决于美国是否实行夏时制。您的纽约时间为“2020-04-23T11:00:00.000-0400”,您的洛杉矶时间为“2020-04-23T08:00:00.000-0700”
就ISO时间戳而言,这些都是相同的时间。用户的计算机(或服务器)将自动将其转换为本地时区
如果您想使用矩将实际时间戳字符串转换为PST,可以使用扩展名。感谢Blake的解释!事实上,我使用的是矩时区,并且有类似的矩(serverTime).tz('America/New_York').utc().format()
,这给了我2020-04-23T15:00:00Z
现在还不是纽约时间上午8点……对。伦敦时间下午3点,纽约时间上午11点,洛杉矶时间上午8点。从我看来,这是正确的。使用矩(serverTime).tz('America/New_York').format(矩.ISO_8601)
,您会得到什么?
$('#startdatetimepicker').datetimepicker({
defaultDate: new Date()
});
$('#enddatetimepicker').datetimepicker();