我正在尝试获取当前日期以进行比较并将小时数设置为零,但仍在获取时间。
var today = new Date(new Date().setHours(0,0,0,0));
var todaynew = today.toISOString();
console.log(todaynew);
我的输出像:
2018-03-20T18:30:00.000Z
我需要按原样获取日期,但时间为 2018-03-20T00:00:00.000Z
最佳答案
当您创建一个 new Date()
时,时区是系统的时区。当您使用 toISOString()
时,时间以 UTC 打印。这意味着您的代码在具有不同时区的系统上运行时将打印不同的结果(它为我打印 2018-03-20T23:00:00.000Z
)。
不使用 setHours()
,而是使用 setUTCHours()
。
var today = new Date(new Date().setUTCHours(0,0,0,0));
var todaynew = today.toISOString();
console.log(todaynew);
关于javascript - 将 setHours 设置为零在 NodeJs 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49407453/