【发布时间】:2018-07-02 12:16:34
【问题描述】:
我有以下代码,其中我有一个到达日期和离开日期,并编辑它们的格式,以及一个禁用日期:
var aankomstDatum = "19-05-2018";
var parts = aankomstDatum.split('-');
aankomstDatumDate = new Date(parts[2],parts[1]-1,parts[0]);
vertrekDatum = "02-06-2018";
var parts2 = vertrekDatum.split('-');
vertrekDatumDate = new Date(parts2[2],parts2[1]-1,parts2[0]);
var aankomstDatumDateCheck = (aankomstDatumDate.getMonth() + 1) + '/' + aankomstDatumDate.getDate() + '/' + aankomstDatumDate.getFullYear();
//alert(aankomstDatumDateCheck);
var vertrekDatumDateCheck = (vertrekDatumDate.getMonth() + 1) + '/' + vertrekDatumDate.getDate() + '/' + vertrekDatumDate.getFullYear();
//alert(vertrekDatumDateCheck);
var disabledDates = "26-05-2018";
var partsdisabled = disabledDates.split('-');
var disableddatesDatumDate = new Date(partsdisabled[2], partsdisabled[1]-1, partsdisabled[0]); //alert(disableddatesDatumDate);
var disableddatesDatumDateCheck = (disableddatesDatumDate.getMonth() + 1) + '/' + disableddatesDatumDate.getDate() + '/' + disableddatesDatumDate.getFullYear();
//alert(disableddatesDatumDateCheck);
if(dateCheck(aankomstDatumDateCheck,vertrekDatumDateCheck,disableddatesDatumDateCheck)) {
console.log("Not available");
} else {
console.log("Available");
}
function dateCheck() {
return true;
}
基本上,如果禁用日期介于到达日期和离开日期之间,则 if-else 触发,否则触发 else。
此代码有效(万岁!),但我还没有。因为我计划将多个日期设置为 var disabledDates ,这就是我被卡住的地方。那么,如何编辑检查多个禁用日期的代码呢?
【问题讨论】:
-
你能提供一个可行的例子吗?例如声明 aankomstDatumDate 并给它一个日期。如果您插入代码示例并将代码粘贴到 JavaScript 框(左下角),您将获得运行代码的运行脚本按钮。我还认为您的代码可以大大简化,当您有一个工作示例时,我很乐意这样做。
-
好的,我从您发布的代码中删除了错误。到达日期是否应该在出发日期之前,即您不希望人们在假期/工作旅行期间包含禁用日期?这些日期是一个很好的测试用例:
{ arrival: 25-05-2018, disabled: 26-05-2018, departure: 27-05-2018 }? -
嗨,我在这里做了一个工作示例:jsfiddle.net/x3gys7wa 禁用日期最好在此测试的到达日期和出发日期之间,例如这意味着其他人在此期间已经预订了。如果您需要更多信息,我会尽力提供帮助!
-
还用您的编辑编辑了问题 + 我如何在当前代码中获得到达和离开日期。
标签: javascript arrays date for-loop date-range