好吧,我需要知道与我的时区相比,用户时间上午9点是几点钟。
喜欢:
我来自巴西,格林尼治标准时间-0300上午9点
即:“开罗”的某个用户访问我的网站,那么我需要知道他的时间何时是上午9点,而我的“开罗”格林尼治标准时间是+0200。
有办法用javascript吗?
谢谢。
最佳答案
您可能正在寻找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()
对象上的Date
轻松检查它们使用扩展构造函数创建。在最坏的情况下,您可能必须执行2-3个计算步骤才能确定最终结果。