[英]Check if dates in an array are within a date range in JavaScript
首先,我有一個包含日期的 var(目前只有一個):
var disableddates = ["26-05-2018"];
現在我想檢查這個日期是否在某個日期范圍內。 開始日期和結束日期來自日期選擇器(使用 jQuery 日歷插件)。 這些日期的處理方式如下:
到達日期:
//Get arrival date from datepicker
function aankomstdatumInput() {
aankomstDatum = document.getElementById("aankomstdatum").value;
document.getElementById("aankomst").innerHTML = aankomstDatum;
var parts = aankomstDatum.split('-');
aankomstDatumDate = new Date(parts[2],parts2[1]-1,parts2[0]);
}
出發日期:
//Get departure date from datepicker
function vertrekdatumInput() {
vertrekDatum = document.getElementById("vertrekdatum").value;
document.getElementById("vertrek").innerHTML = vertrekDatum;
var parts2 = vertrekDatum.split('-');
vertrekDatumDate = new Date(parts2[2],parts2[1]-1,parts2[0]);
}
現在我需要一個函數來檢查 disableddates 數組中的每個日期是否在 aankomstDatumDate 和 vertrekDatumDate 的范圍內。
由於這兩個日期是按以下方式制定的:Sat May 05 2018 00:00:00 GMT+0200(浪漫夏令時),我首先必須在相同的公式中設置禁用日期,所以我啟動了這樣的功能:
function checkDisabledDate{
var parts3 = disableddates.split('-');
disabledDatumDate = new Date(parts3[2],parts3[1]-1,parts3[0]);
}
我認為這是一個很好的第一步,但隨后我被困在如何檢查 disabledDatumDate 是否在 aankomstDatumDate 和 vertrekDatumDate 之間,然后開始,否則/如果禁用日期是否在到達日期和離開日期之間。
function checkDisabledDate{
for(var i = 0; i < disableddates.length; i++){
var parts3 = disableddates.split('-');
disabledDatumDate = new Date(parts3[2],parts3[1]-1,parts3[0]);
var diff1 = vertrekDatumDate - disabledDatumDate;
var diff2 = vertrekDatumDate - aankomstDatumDate;
if(diff2 > diff1){
//disabledDatumDate within date range
//do something
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.