我正在使用new Date()
创建日期。当我这样做时,它减去了一天。这是代码:
var dateString = "2016-04-10";
var date = new Date(dateString);
// date = Sat Apr 09 2016 18:00:00 GMT-0600 (MDT)
我误解了什么?为什么日期不是Apr 10 2016
?我该如何正常工作?
答案 0 :(得分:9)
您的时区为GMT-6(由您提供的输出中的GMT-0600 (MDT)
显示)。因此生成的日期偏移-6小时。在这种情况下,午夜减6小时是前一天下午6点。
如果您致电date.toISOString()
,您会发现UTC时间符合预期"2016-04-10T00:00:00.000Z"
。