Javascript 将ISO日期时间设置为零

Javascript 将ISO日期时间设置为零,javascript,mongodb,date,Javascript,Mongodb,Date,我试图比较Mongo查询中提交的日期,该查询的日期为ISO格式。日期如下: 2018-01-20T00:00:00.000Z 我想将今天的日期与此进行比较,因此我的方法是创建一个新日期并将其时间设置为零,如下所示: var today = new Date(); today.setHours(0,0,0,0); //Sat Jan 20 2018 00:00:00 GMT-0800 (PST) 这样,时间似乎被设置为零。当我将其转换为ISO字符串进行比较时出现问题: console.log(

我试图比较Mongo查询中提交的日期,该查询的日期为ISO格式。日期如下:

2018-01-20T00:00:00.000Z
我想将今天的日期与此进行比较,因此我的方法是创建一个新日期并将其时间设置为零,如下所示:

var today = new Date();
today.setHours(0,0,0,0); //Sat Jan 20 2018 00:00:00 GMT-0800 (PST)
这样,时间似乎被设置为零。当我将其转换为ISO字符串进行比较时出现问题:

console.log(today.toISOString()); //2018-01-20T08:00:00.000Z
正如你们所看到的,它将一切都设置为零,但小时仍然是08。我无法将这个小时设置为零。

var today=新日期();
今天,setUTCHours(0,0,0,0);
document.getElementById('val').innerHTML=today.toISOString()
日期:(ISO字符串)

setUTC*
函数有很多…@oneberenjena查看发布的答案。希望它能帮上忙。这会给我想要的带零的时间,只是它会像这样告诉我明天的日期(对我来说)
2018-01-21T00:00:00.000Z
,而我正在寻找第20天,在这种情况下。不管怎么说,这对我很有效。多谢各位@oneberenjena将UTC时间设置为00:00:00。您的本地时间将被您的时区偏移量抵消,因此本地日期和UTC日期可能是不同的日期。