Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS:Convert Today';将日期转换为具有固定时间的ISOString()_Javascript_Date - Fatal编程技术网

Javascript JS:Convert Today';将日期转换为具有固定时间的ISOString()

Javascript JS:Convert Today';将日期转换为具有固定时间的ISOString(),javascript,date,Javascript,Date,我正在尝试将今天的日期转换为ISO标准字符串,但固定时间为T00:00:00.000Z 我可以返回今天日期和时间的ISO字符串: var isoDate = new Date().toISOString(); // returns "2015-10-27T22:36:19.704Z" 但我想知道是否有可能有一个固定的时间,所以它应该返回: "2015-10-27T00:00:00.000Z" 这可能吗 感谢您的帮助。提前谢谢 要获取午夜的当前UTC日期: var d = new Date()

我正在尝试将今天的日期转换为ISO标准字符串,但固定时间为
T00:00:00.000Z

我可以返回今天日期和时间的ISO字符串:

var isoDate = new Date().toISOString();
// returns "2015-10-27T22:36:19.704Z"
但我想知道是否有可能有一个固定的时间,所以它应该返回:

"2015-10-27T00:00:00.000Z"
这可能吗


感谢您的帮助。提前谢谢

要获取午夜的当前UTC日期:

var d = new Date();
d.setUTCHours(0);
d.setUTCMinutes(0);
d.setUTCSeconds(0);
d.setUTCMilliseconds(0);
var output = d.toISOString();
var d = new Date();
var ts = Date.UTC(d.getFullYear(), d.getMonth(), d.getDate());
var output = new Date(ts).toISOString();
要获取当前本地日期,并将时间部分设置为UTC午夜,请执行以下操作:

var d = new Date();
d.setUTCHours(0);
d.setUTCMinutes(0);
d.setUTCSeconds(0);
d.setUTCMilliseconds(0);
var output = d.toISOString();
var d = new Date();
var ts = Date.UTC(d.getFullYear(), d.getMonth(), d.getDate());
var output = new Date(ts).toISOString();
至于使用哪一个,请仔细考虑您的需求,当前UTC日期和本地日期可能确实是两个不同的日期

例如,当UTC时间为10月27日午夜(00:00)时,纽约时间为10月26日晚上8:00


也可以考虑使用,这使得操作变得更容易,如<代码>开始(“天”)< /> >和>代码> UTC()/<代码>函数。

“今天”,你的意思是“在用户的本地时区中的当前日期”,或者你是指“通用时间(UTC,GMT等)中的当前日期”?它们并不总是一样的。对不起,我是说本地的。所以你想要本地的日期,但是在UTC午夜。为什么?因为我需要使用此ISO字符串作为查询参数,如果将时间设置为午夜以外的任何时间,则查询不起作用。很可能您的查询需要与当地一天的开始或结束相当的UTC,这可能与UTC午夜不一致,但我回答了您下面的问题。谢谢。很好的解释!事实上,UTC正是我所追求的。我想我会选择moment.js选项
moment().startOf('day').toISOString()
,因为我已经在使用那个特定的库了。再次感谢!