是的,我知道有成千上万个类似的问题,但我的大脑正在崩溃,我向你寻求帮助。 我读了很多文章,但仍然很困惑。
这是我所拥有的。
var next_market_event_in_NewYork = "2014-12-02T16:00:00"; //that's what server gives me
var secondsFromMarketToMoscow = 28800; //that's also what server gives me
var secondsFromMoscowToLondon = 10800; //that's also what server gives me
var secondsFromLocalToLondon = 7200; //that's what I get from local timeoffset new Date().getTimezoneOffset()*(-60)
我需要的是从现在本地到纽约的下一场事件还剩多少秒。为此花费了几十个小时。只是不知道如何得到答案。请帮忙。
最佳答案
困难的部分是计算纽约时间和 UTC 之间的时差。如果您可以在服务器端执行此操作,那么应该没有问题。如果您不能,那么您可以对偏移量进行硬编码,但是当美国采用夏令时时,情况会发生变化。
下面是一个代码示例,其中包含 NY 和 UTC 之间硬编码的 5 小时偏移。
var next_market_event_in_NewYork = "2014-12-02T16:00:00";
var msNYtoUTC = 5 * 60 * 60 * 1000; //better to calculate this server-side
var nextEventDate = new Date(Date.parse(next_market_event_in_NewYork) + msNYtoUTC);
setInterval(function() {
var localTime = new Date();
var secondsRemaining = (nextEventDate - localTime) / 1000;
document.getElementById("result").innerHTML = secondsRemaining.toFixed(0);
}, 1000);
<h1>
<span id="result"></span>
seconds until market event
</h1>
关于javascript - 获取本地时间和远程时间之间的时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27253651/