javascript - 在 JavaScript 中获取客户端的 GMT 偏移量

标签 javascript time timezone timezone-offset

如何在客户端的 JavaScript 中获取 GMT 偏移量?

new Date().getTimezoneOffset(); 返回与 UTC 的差异。有没有办法可以计算出 GMT 偏移量?

按 GMT 偏移量,我的意思是东部标准时间为 -5。

最佳答案

new Date().getTimezoneOffset(); returns the difference from UTC. Is there a way I can calculate the GMT offset from that?

时区偏移与 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 ,但是它的工作原理是根据两个日期的偏移量进行猜测,并且可能不正确。

关于javascript - 在 JavaScript 中获取客户端的 GMT 偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24500375/

相关文章:

MySql 时区 JDBC 问题

python - 努力在Python中将时区GMT转换为CST

python - 带有时间戳和时区列的 Pandas 数据框

postgresql - postgres 现在(仅时间)与时间(仅现在时间)进行比较

python - 使用 Python 缩放日期范围

mysql - 如何只显示当前的记录

javascript - 为什么我的 jQuery 点击函数没有触发?

javascript - 在 node.js (Express) 中分配给 res 和 res.locals 的区别

javascript - 使用 javascript 计算多个选择选项的总计

javascript - 如何在一页但在不同的图像容器中制作自动和手动图像 slider ?