使用Javascript处理时区的最佳方法是什么?

mar*_*cgg 6 javascript time timezone

我有一个具有给定时区的经过身份验证的用户,例如"Berlin,GMT + 1".为了这个问题,让我说我在全球范围内有这个:

var timeZone = "Berlin";
var gmtDistance = 1;
Run Code Online (Sandbox Code Playgroud)

让所有与日期相关的JS相应地运行的最佳解决方案是什么,这意味着如果我创建一个新的Date对象,它将考虑时区.


我认为这很简单,但我似乎没有找到在Google/SO上做到这一点的完美方式.我很荣幸能得到一个不需要任何外部库的答案.

Ada*_*dam 0

像这样的事情怎么办?

http://www.onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/

var rightNow = new Date();
var jan1 = new Date(rightNow.getFullYear(), 0, 1, 0, 0, 0, 0);
var temp = jan1.toGMTString();
var jan2 = new Date(temp.substring(0, temp.lastIndexOf(" ")-1));
var std_time_offset = (jan1 - jan2) / (1000 * 60 * 60);
Run Code Online (Sandbox Code Playgroud)