我正在为Google表格编写自定义功能。 一部分应计算两个差异时间的增量。
function timeOut(input) {
var difference = input[0][1]-input[0][0];
var output = new Date(difference);
return output;
}
变量差异包含零。 问题是新的Date(0)正在返回
Thu Jan 01 1970 01:00:00 GMT + 0100(CET)
而不是
1970年1月1日星期四00:00:00 GMT + 0100(CET)
所以9小时减去9小时的差异是1小时,这显然是错误的。
你能指出我,我做错了吗?
答案 0 :(得分:1)
00:00:00 GMT+0100
将是-1小时,因为它是+0100,时区很重要,01:00:00 GMT+0100
确实是0小时。
如果您想获得GMT,可以使用toGMTString()
:
var date = new Date(0);
alert(date.toGMTString()); // prints Thu, 01 Jan 1970 00:00:00 GMT
答案 1 :(得分:0)
实际上显然是正确的,在GMT时间的00:00:00,在+0100时间是01:00:00。
如果您需要GMT时间,您可以:
var GMTTime = new Date( -new Date().getTimezoneOffset() * 60000 );