gpt4 book ai didi

javascript - Moment.js : Timezone converter does not work correctly when switching between different timezones

转载 作者:行者123 更新时间:2023-12-03 10:36:38 27 4
gpt4 key购买 nike

我正在我的网站上使用时刻时区转换器进行时区日期转换。默认情况下,我在 IST 中显示日期和时间。我有一个按钮可以转换用户时区中的给定时间。此按钮操作调用 moment js 并进行转换。到这里我没有问题。当我将时间恢复到 IST 并且转换从未发生时,问题就出现了。我在这里缺少什么吗?

<script type="text/javascript">
var userTzName = 'America/New_York';
var dateFormat = 'YYYY-MM-DD HH:mm:ss';
var timeStr = '2015-01-17 21:00:00';
var convertedStr = moment(timeStr).tz(userTzName).format(dateFormat);
console.log(convertedStr);

//after sometime or on user action(button click)
userTzName = 'Asia/Kolkata';
timeStr = '2015-01-17 10:30:00'; //this is the converted string from original coversion
var convertedStr1 = moment(timeStr).tz(userTzName).format(dateFormat);
console.log(convertedStr1);
</script>

最佳答案

抱歉,这不是一个错误。我错误地使用了图书馆。我所做的就是将 ISO 日期字符串传递给我的时刻函数,它的工作就像一个魅力。我之前的实现不起作用,因为当我转换日期时间字符串时,第一个时刻总是认为转换后的日期时间位于 IST 中。因此,我所要做的就是传达第二次转换发生时我的时区不同的时刻,并且我能够通过 ISO 日期字符串实现这一点。这是代码:

<script type="text/javascript">
var userTzName = 'America/New_York';
var dateFormat = 'YYYY-MM-DD HH:mm:ss';
var timeStr = '2015-01-17T21:00:00+05:30';//this is a ISO date string
var convertedStr = moment(timeStr).tz(userTzName).format(dateFormat);
console.log(convertedStr);
</script>

关于javascript - Moment.js : Timezone converter does not work correctly when switching between different timezones,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28959862/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com