JavaScript中的星期几不正确

时间:2016-01-04 13:43:25

标签: javascript

以下日期:

Wed Jan 06 2016 02:00:00 GMT+0200 (IST) 

以下表达式(应该返回1月1日的星期几)

new Date(date.getUTCFullYear(), 0).getUTCDay()

返回4而不是预期的5(星期五......)

为什么它不起作用?

2 个答案:

答案 0 :(得分:4)

我认为这是因为new Date不再是UTC getUTCDay。请改用getDay

  

$ new Date(2016,0)

     

Fri Jan 01 2016 00:00:00 GMT + 0200(EET)

注意 +0200 部分。

答案 1 :(得分:0)

我希望这个例子能澄清你的怀疑

我在IST时区(GMT + 0530)并且根据当天的时间,UTC是落后一天或同一天。因此结果。

var d1 = new Date(2016, 0, 6, 5, 29, 0); 
var d2 = new Date(2016, 0, 6, 5, 30, 0); 
console.log(d1.getUTCDay(), d2.getUTCDay()); //logs 2 3