假设我们有两次:
所以我的问题是如何生成具有以下时间的数组:
我需要这个来进行预订,所以可以说该公司将于7:30开放,您可以进行的每次预订都将是30分钟(此时间可以更改,可能是一小时或更长时间)
在JS中生成这样的东西的最佳方法是什么?
最佳答案
就像代码中的注释所表明的那样,如果不需要,您可以在小时前删除0,方法是删除该行。
如果您不希望数组的末尾,只需在for循环中用<=
替换<
function timeArray(start, end){
var start = start.split(":");
var end = end.split(":");
start = parseInt(start[0]) * 60 + parseInt(start[1]);
end = parseInt(end[0]) * 60 + parseInt(end[1]);
var result = [];
for ( time = start; time <= end; time+=30){
result.push( timeString(time));
}
return result;
}
function timeString(time){
var hours = Math.floor(time / 60);
var minutes = time % 60;
if (hours < 10) hours = "0" + hours; //optional
if (minutes < 10) minutes = "0" + minutes;
return hours + ":" + minutes;
}
console.log(timeArray("7:30", "12:00"));
关于javascript - JS/TypeScript生成小时之间的时间,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45400029/