我需要知道用户时间上午9点与我的时区相比的时间。
像:
我来自巴西上午9点GMT -0300
即:来自'开罗'的一些用户访问我的网站然后我需要知道他的时间早上9点与我的时间相比'开罗'gmt是+0200。
有没有办法用javascript做到这一点?
感谢。
答案 0 :(得分:2)
您可能正在寻找getTimezoneOffset()
方法
(见http://www.w3schools.com/jsref/jsref_gettimezoneoffset.asp):
var d = new Date()
var n = d.getTimezoneOffset();
n
将是UTC和本地时间之间的时区差异,以分钟为单位。
更全面的指南:http://www.onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/。
编辑: 哦,我忘记了未来的时间部分。在这种情况下,使用其中一个扩展构造函数创建自定义日期实例应该足够了:
var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);
它可用于确定当时的时区差异。
您可以在某个时间轻松确定偏移量o
,并且指定时间的最终偏移量为o
,o + 60
或o - 60
,可以使用{使用扩展构造函数创建的getTimezoneOffset()
对象上的{1}}。
在最坏的情况下,您可能需要执行2-3个计算步骤来确定最终结果。
答案 1 :(得分:-1)
结帐:javascript timezone converter,有一个关于你的询问主题的公开讨论。