Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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 将时间添加到HH:mm字符串_Javascript_String_Date - Fatal编程技术网

Javascript 将时间添加到HH:mm字符串

Javascript 将时间添加到HH:mm字符串,javascript,string,date,Javascript,String,Date,我目前有一个时间字符串列表 1: 20:15 2: 20:15 3: 20:15 4: 19:15 5: 20:00 6: 19:15 7: 20:15 8: 20:15 9: 19:00 10: 19:15 11: 20:15 12: 19:00 13: 20:00 14: 20:00 15: 20:00 16: 20:00 由于它们不在我的本地时区内,我想在列表中的每个时间中添加2小时,但我不确定如何使用日期功能实现这一点,因为我只能访问小时和分钟,而不能访问完整日期 这可能很简单,但老

我目前有一个时间字符串列表

1: 20:15
2: 20:15
3: 20:15
4: 19:15
5: 20:00
6: 19:15
7: 20:15
8: 20:15
9: 19:00
10: 19:15
11: 20:15
12: 19:00
13: 20:00
14: 20:00 
15: 20:00
16: 20:00
由于它们不在我的本地时区内,我想在列表中的每个时间中添加2小时,但我不确定如何使用日期功能实现这一点,因为我只能访问小时和分钟,而不能访问完整日期

这可能很简单,但老实说,这是我第一次在JS中使用日期

输出应该如下所示

1: 22:15
2: 22:15
3: 22:15
4: 21:15
5: 22:00
6: 21:15
7: 22:15
8: 22:15
9: 21:00
10: 21:15
11: 22:15
12: 21:00
13: 22:00
14: 22:00 
15: 22:00
16: 22:00
我从API获取字符串,因此这也必须适用于任何其他字符串列表(格式:HH:mm)


因为这是我的一个学习项目,我更喜欢在没有外部脚本的情况下实现它。

对于这个用例,拆分字符串并以这种方式更新可能更简单

var时间=[
"20:15",
"20:15",
"20:15",
"19:15",
"20:00",
"19:15",
"20:15",
"20:15",
"19:00",
"19:15",
"20:15",
"19:00",
"20:00",
"20:00",
"23:00",
"20:00"
]
功能添加2小时(时间){
设HM=time.split(“:”),
h=parseInt(HM[0])+2,m=HM[1]
如果(h>23)h-=24
返回[h,m]。联接(':')
}

console.log(times.map(add2hours))
您可能应该将每次拆分为小时和分钟,
parseInt
小时,添加2并重新组合

let times=[“20:15”、“20:15”、“20:15”、“19:15”、“20:00”、“19:15”、“20:15”、“19:00”、“19:15”、“20:15”、“19:00”、“20:00”、“20:00”];
让updateTimes=times.map(time=>{
让[hours,minutes]=time.split(“:”);
//增加2小时,确保不超过23小时
小时数=(parseInt(小时数)+2)%24;
返回[hours,minutes]。加入(“:”);
});

console.log(更新时间)在处理日期/时间/时区时,我强烈建议使用,它支持
时刻('20:15','hh:mm')。添加(2,'hours')
。这个问题可能会有所帮助,也可以使用mommentjs:很抱歉在问题中没有说这个。这是为了我的一个学习项目,所以我更喜欢在没有任何外部脚本或库的情况下实现它。@Jeffreyroosendal momentjs对于这个简单的问题来说是一个过火的解决方案谢谢你,这解决了问题,也是最干净的解决方案。@K.Kleinvogel很好奇,但你为什么接受jmcgriz的答案相反?不幸的是,不介意你选择哪个答案,只要它有帮助。