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中递增时间戳(YYYY-MM-DDTHH:MM:SS)的问题_Javascript_Date_Time_Timestamp - Fatal编程技术网

Javascript JS中递增时间戳(YYYY-MM-DDTHH:MM:SS)的问题

Javascript JS中递增时间戳(YYYY-MM-DDTHH:MM:SS)的问题,javascript,date,time,timestamp,Javascript,Date,Time,Timestamp,我试图将格式为(YYYY-MM-DDTHH:MM:SS)的时间戳的时间增加1小时。在22:00之前,这一切都很好。但是,当输入时间为23:00:00时,时间组件将正确更改为00:00:00,但相应的日期将增加到一个月以上(跳1个整月)。例如2020-07-31T23:00:00更改为2020-09-01T00:00:00。在此方面的任何帮助都将不胜感激 var-sdate='2020-07-31T23:00:00'; var temp1=sdate.split('T'); 文件编写(temp1

我试图将格式为(YYYY-MM-DDTHH:MM:SS)的时间戳的时间增加1小时。在22:00之前,这一切都很好。但是,当输入时间为23:00:00时,时间组件将正确更改为00:00:00,但相应的日期将增加到一个月以上(跳1个整月)。例如2020-07-31T23:00:00更改为2020-09-01T00:00:00。在此方面的任何帮助都将不胜感激

var-sdate='2020-07-31T23:00:00';
var temp1=sdate.split('T');
文件编写(temp1);
var d=temp1[0]。拆分('-');
var t=temp1[1]。拆分(“:”);
文件。写(“
”); 文件编写(d); 文件。写(“
”); 文件。编写(t); var dt3=新日期(d[0],d[1],d[2],t[0],t[1],t[2],0); var dt4=dt3.setSeconds(dt3.getSeconds()+3600); var最终=新日期(dt4); 文件。写(“
”); 文件编写(最终); 文件。写(“
”); document.write(final.getFullYear()); 文件。写(“
”); document.write(final.getMonth()); 文件。写(“
”); document.write(final.getDate()); 文件。写(“
”); document.write(final.getHours()); 文件。写(“
”); document.write(final.getMinutes()); 文件。写(“
”);
document.write(final.getSeconds())为什么会出现这些复杂情况?JS有自己的

您只需通过以下方式即可实现小时数增加1:

var sdate=新日期('2020-07-31T23:00:00');
log(sdate.toISOString());
sdate.setHours(sdate.getHours()+1)

log(sdate.toISOString())为什么会出现这些复杂情况?JS有自己的

您只需通过以下方式即可实现小时数增加1:

var sdate=新日期('2020-07-31T23:00:00');
log(sdate.toISOString());
sdate.setHours(sdate.getHours()+1)

log(sdate.toISOString())您的问题是您认为七月实际上是八月,因为JavaScript构造函数上的月号是0索引的,所以在这一行中:

var dt3= new Date(d[0], d[1], d[2], t[0], t[1], t[2], 0); 
你正在设定8月31日。
有关更多信息,请访问

您的问题是您认为七月实际上是八月,因为JavaScript构造函数上的月号是0索引的,所以在这一行:

var dt3= new Date(d[0], d[1], d[2], t[0], t[1], t[2], 0); 
你正在设定8月31日。
有关更多信息,请访问

您将7作为月份传递给构造函数,但月份计数从0开始,因此您认为现在是7月,但现在已经是8月了!时光飞逝

这意味着当你加上一个小时,你就过了午夜进入了九月

var-sdate='2020-07-31T23:00:00';
var temp1=sdate.split('T');
document.write(`date我想我的开头是:${sdate}`);
var d=temp1[0]。拆分('-');
var t=temp1[1]。拆分(“:”);
var dt3=新日期(d[0],d[1],d[2],t[0],t[1],t[2],0);
文件。写(“
”);
write(`date我实际上以:${dt3.toISOString()}`)开头)您将7作为月份传递给构造函数,但是月份计数从0开始,所以您认为是7月,但已经是8月了!时光飞逝

这意味着当你加上一个小时,你就过了午夜进入了九月

var-sdate='2020-07-31T23:00:00';
var temp1=sdate.split('T');
document.write(`date我想我的开头是:${sdate}`);
var d=temp1[0]。拆分('-');
var t=temp1[1]。拆分(“:”);
var dt3=新日期(d[0],d[1],d[2],t[0],t[1],t[2],0);
文件。写(“
”);
write(`date我实际上以:${dt3.toISOString()}`)开头)使用内置对象使用内置对象非常感谢-这非常好。只是一个简单的问题-我如何以“YYYY-MM-DDTHH:MM:SS”的格式将其取回?目前显示为2020年8月1日星期六00:00:00
。toISOString()
应提供您想要的格式,并且不要忘记将答案标记为已接受。不要使用内置解析器。将Safari中的结果与其他浏览器进行比较,请参见,在添加1小时后,我无法将其恢复为YYYY-MM_DDTHH:MM:SS的格式,如您所述。你能帮个忙吗。toISOString()无法使用这种格式。非常感谢您-这非常好用。只是一个简单的问题-我如何以“YYYY-MM-DDTHH:MM:SS”的格式将其取回?目前显示为2020年8月1日星期六00:00:00
。toISOString()
应提供您想要的格式,并且不要忘记将答案标记为已接受。不要使用内置解析器。将Safari中的结果与其他浏览器进行比较,请参见,在添加1小时后,我无法将其恢复为YYYY-MM_DDTHH:MM:SS的格式,如您所述。你能帮个忙吗。toISOString()无法使用此格式。