Javascript 如果所选日期是数组中的最后一个日期,则返回false

Javascript 如果所选日期是数组中的最后一个日期,则返回false,javascript,arrays,loops,date,datetimepicker,Javascript,Arrays,Loops,Date,Datetimepicker,我有一个循环,它检查用户是否单击了预订数组中已经存在的日期。我的问题是,如果单击的日期是其中一个数组中的最后一个日期,它不应该警告用户。我希望这是有道理的 arrayAfBookninger.forEach(function(array) { var lastDay = array[array.length - 1]; array.forEach(function(dato) { if (startdato == m

我有一个循环,它检查用户是否单击了预订数组中已经存在的日期。我的问题是,如果单击的日期是其中一个数组中的最后一个日期,它不应该警告用户。我希望这是有道理的

arrayAfBookninger.forEach(function(array) {
            var lastDay = array[array.length - 1];
            array.forEach(function(dato) {
                if (startdato == moment(dato).format("YYYY-MM-DD") || slutdato == moment(dato).format("YYYY-MM-DD")) {
                    alertify.alert("Datoen er allerede booket. Vælg venligst en anden dato.");
                    $("#startdato").val("");
                    $("#slutdato").val("");
                }
                datoerMellemStartSlut.forEach(function(val) {
                    if (moment(val).format("YYYY-MM-DD") === moment(dato).format("YYYY-MM-DD")) {
                        alertify.alert("Der er bookede datoer mellem den valgte start- og slutdato. Vælg venligst en anden dato.");
                        $("#startdato").val("");
                        $("#slutdato").val("");
                    }
                });
            });
        });
如果用户点击17。此处不应显示任何警报

到目前为止,我已经尝试将每个数组的最后一天保存在一个变量中,但我不确定如何将其应用于循环。现在,数组中的所有日期都将与用户选择的startdate和enddate slutdato进行比较。我也不想从数组中删除日期,因为我需要它们仍然以日历中的颜色显示

临时解决办法:

if (dato == lastDay) {
    return;
}

通过使用indexOf JavaScript数组函数,您可以更轻松地检查数组中是否有内容。 执行如下操作: ifarray.indexOfdatetocheck>-1//它存在于数组中 这将允许您不必使用更简单、更快的代码对所有内容进行迭代。如果需要,还可以将indexOf的结果分配给变量,并在数组中具有日期索引。 有点不相关,但我也建议使用
new Datedates.valueOf将它们存储在数字UTC时间戳中,更易于管理,只需将它们呈现在最前面。

请提供一个演示代码以帮助betterI通过简单地返回forEach循环来找到解决方案,但如果可能的话,我想用不同的方法来处理它。我已经在帖子中添加了代码。Aderfe ellinas eisai?Gia ton eniko tou数据=>dato!西奥利斯!