簡體   English   中英

檢查數組中的日期是否在 JavaScript 中的日期范圍內

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM