如何在客户端的javascript中获取GMT偏移?
new Date().getTimezoneOffset();
返回与UTC的差异。有没有办法可以计算GMT的偏差?
按GMT抵消,我的意思是东部标准时间为-5。
答案 0 :(得分:7)
new Date()。getTimezoneOffset();返回与UTC的差异。有没有办法可以计算GMT的偏差?
时区偏移 与GMT的差异(以分钟为单位)(参见ECMA-262 §15.9.5.26)。该标志与ISO 8601相反,但它可以通过更标准的标志轻松转换为小时和分钟:
function getTimezoneOffset() {
function z(n){return (n<10? '0' : '') + n}
var offset = new Date().getTimezoneOffset();
var sign = offset < 0? '+' : '-';
offset = Math.abs(offset);
return sign + z(offset/60 | 0) + z(offset%60);
}
getTimezoneOffset() // +0800 for UTC/GMT + 8hrs
如果您想确定IANA时区指定,可以尝试pellepim jstimezonedetect,但是根据两个日期的偏移进行猜测并且可能不正确。