Перебор массива объектов в цикле

Я работаю над приложением asp.net, которое использует множество элементов управления пользовательского интерфейса jQuery, в частности средство выбора даты.

В своем веб-сервисе я обращаюсь к базе данных и извлекаю список объектов, а затем передаю их обратно в свой javascript, где я анализирую их в массив, содержащий 1 или несколько объектов, которые выглядят следующим образом:

javascript object

Мне нужно включить какую-то логику, в которой я могу прокручивать этот массив объектов и проверять, попадает ли дата javascript между свойствами EndDate и StartDate объекта, чтобы я мог применить стиль css для DatePicker. Первый вопрос: есть ли способ преобразовать свойство EndDate/StartDate из этого формата в допустимую дату javascript? И если да, то как я могу перебрать массив и применить логику, чтобы увидеть, попадает ли дата в диапазон?

Будем признательны за любую помощь!

Изменить: я заметил, что изображение здесь плохо видно, вы можете более четко прочитать свойства здесь:

ссылка на изображение

В соответствии с запросом вот пример кода:

function createDateRangesForCalendar() {
    $.ajax({
        type: "POST",
        url: "../Services/BookingService.asmx/GetCalendarDateRanges",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        async: false,
        success: function (response) {
            dateRanges = $.parseJSON(response.d);
        },
        error: function (xhr, textStatus, thrownError) {
            alert(textStatus);
            alert(thrownError);
        }
    });
}

function markInvalidDates(date) {

    var isHoliday = false;
    dmy = date.getDate() + "-" + (date.getMonth() + 1) + "-" + date.getFullYear();

    isHoliday = checkIsHoliday(date);

    if ($.inArray(dmy, invalidDays) == -1) {

        for (var i = 0; i < dateRanges.length; i++) {
            // if date falls in between start and end date of object[i] return something like: return [true, "holiday", "Holiday Rates Apply - Minimum 14 days"];
            // else loop through to the next object and try there
            } 

        if (isHoliday == true) {
            return [true, "holiday", "Holiday Rates Apply - Minimum 14 days"];
        } else {
            return [true, ""];
        }
    } else {
        return [false, "unavailable", "Unavailable"];
    }
}

0
задан Glorfindel 20 August 2019 в 19:31
поделиться