Array(2)
0: {StrngStartDate: ""09/19/2020 06:00:00"", StrngEndDate: ""09/19/2020 07:00:00"", GoalId: 16352, CreatedBy: NaN, ReasonForAdding: "tre", …}
1: {StrngStartDate: ""09/19/2020 06:00:00"", StrngEndDate: ""09/19/2020 06:30:00"", GoalId: 16352, CreatedBy: NaN, ReasonForAdding: "rrre", …}我有如上所示的2数组。在上面的数组中,其中一个字段的开始时间和结束时间为6:00am -7:00am我希望如果用户尝试在同一数组中添加另一个对象,因为第二个条目的开始时间和结束时间分别为6:00am-6:30am,那么它将不允许添加该数组,因为该时间条目已经存在,而6:00am-6:30am介于这两者之间。提前谢谢。
发布于 2020-09-19 19:13:57
您可以遍历当前条目,并将时间戳作为javascript Date() objects进行比较。减去Date()对象将返回以毫秒为单位的差值,如下所示:
let new_entry = {
StrngStartDate: '09/19/2020 06:00:00',
StrngEndDate: '09/19/2020 06:30:00'
};
$.each(current_entries, function(index, entry) {
if ((new Date(entry.StringStartDate)) - (new Date(new_entry.StringStartDate)) < 0) {
//new entry start is after existing entry
} else if ((new Date(entry.StringEndDate)) - (new Date(new_entry.StringEndDate)) > 0) {
//new entry end time is before existing end time
} else {
current_entries.push(new_entry);
}
});https://stackoverflow.com/questions/63966348
复制相似问题