javascript - 在 JavaScript 中创建时隙的问题
问题描述
我将创建每个两个小时的时间段。
start_time=10:00
end_time=24:00
喜欢 [ [10:00,12:00], [12:00,14:00], [14:00,16:00] ] ...
我正在使用该功能:
function calculate_time_slot(start_time, end_time, interval = "120") {
var i, formatted_time;
var time_slots = new Array();
for (var i = start_time; i <= end_time; i = i + interval) {
formatted_time = convertHours(i);
time_slots.push(formatted_time);
}
return time_slots;
}
但它会产生这样的结果:
[
'10:00', '12:00',
'14:00', '16:00',
'18:00', '20:00',
'22:00', '24:00'
]
如何使配对得到想要的结果,例如:
[ [10:00,12:00], [12:00,14:00], [14:00,16:00] ] ...
解决方案
在循环内部,计算两个格式化时间:一个用于槽的开始,一个用于槽的结束:
function calculate_time_slot(startTime, endTime, interval = 120) {
const timeSlots = [];
for (let i = startTime; i < endTime; i += interval) {
const formattedBegin = convertHours(i);
const formattedEnd = convertHours(i + interval);
timeSlots.push([formattedBegin, formattedEnd]);
}
return timeSlots;
}
确保设置interval
为数字,而不是字符串,以便添加而不是连接。
推荐阅读
- regex - Terraform 替换正则表达式无法正常工作
- jquery - 将属性转换回数组
- mysql - 根据行本身选择结果
- .net-core - “Access-Control-Allow-Origin”标头包含多个值,但只允许一个
- c - if (y & (y = 2) 那么如何处理这个 if 条件
- ffmpeg - Win10下的FFMPEG H.264编码与多款AMD RX580卡
- jboss-eap-7 - 无法在 Jboss EAP 7.1 服务器中添加驱动程序
- python - 如何从 Python 中的 Json 数组中检索特定记录?
- react-native - 单击onPress按钮后如何更改按钮上的图标(图标名称属性)
- javascript - 使用 ErrorBoundary 捕获后 React 仍然显示错误