相交时隙

use*_*190 1 javascript date

我正在开发一个预订系统,该系统围绕用户选择一个时段而工作,我试图检查重叠预订.

我正在尝试创建一个返回所有可用时隙的函数.我有一个叫做bookings当天预订的数组,我有一个名为的数组slots.

我尝试循环遍历数组并尝试这样做:

if (slot.start > booking.dateStart.clone().addMinutes(-30) && slot.end < booking.dateEnd.clone().addMinutes(30))

检查是否有任何重叠,以及是否有我从阵列中拼接插槽.我需要在每次预订之间留出30分钟的间隔,这就是为什么我要添加分钟.

kri*_*gar 6

找到重叠时间段的公式是

start1 <= end2 && end1 >= start2
Run Code Online (Sandbox Code Playgroud)

如果这是真的,则周期确实重叠.如果你需要离开30分钟的差距,再加上一点到的比较end1start2.