我使用var offset = new Date().getTimezoneOffset()
来获取用户的当前时区偏移量。
但是,如何在未来的某个时间内获得时区偏移?
这是必需的,因为启用/禁用DST
时时区偏移量不同。所以我不能假设未来时间的偏移量相同。
答案 0 :(得分:1)
这个问题使我误以为可能getTimezoneOffset()
未能正确获得未来日期的时区偏移量。确实如此。
就JavaScript
而言,从纪元日期开始,它给它一个毫秒,这是无处不在的,它给你在当地时间的偏移,因为它将在那个日期,因为所有Date功能都关注的是采用通用日期/时间并传回一个对本地用户有意义的日期,除非您使用getUTCDate()
之类的方法专门询问其通用等效项。 / p>
正在运行
var summer = new Date(1403170847000);
alert('Summer offset=' + summer.getTimezoneOffset());
var winter = new Date(1419500175000);
alert('Winter offset=' + winter.getTimezoneOffset());
在当地时间包含DST期间的控制台中,我在英国报告的夏季日期偏移为-60(即GMT + 1),日期为0(即GMT)冬季。