Сравнение дат

Выставляю на суд общественности функцию сравнения дат. Прошу высказать свое мнение. В частности можно ли как-то красивее? И где можно получить помощь?

function us_0(Dataset) {

        // текущая дата
        var CurrentData = new Date().setHours(0, 0, 0, 0);

        // дата из поля 'планируемая дата начала' плюс одна секунда
        var EstimatedStartDate = new Date(Dataset.Values('EstimatedStartDate')).getVarDate()+1

        if ((EstimatedStartDate CurrentData) & (Dataset.Values('StartDate')==null || Dataset.Values    ('StartDate')==''))
        {return true }
        else {return false}            
}

Нравится

6 комментариев

IsEqualDate c scr_DateUtils

в скрипте scr_DateUtils есть только function IsEqualDateTime(DateTime1, DateTime2)

Эта функция не подходит.
1. Она может только сравнить, а надо больше-меньше
2. для моего случая она даже не может сравнить
дата в поле (EstimatedStartDate) - 06.04.2010
текущая дата (CurrentData) - 29.05.2010 0:13:23

"chess" написал:(Dataset.Values('StartDate')==null || Dataset.Values    ('StartDate')=='')

Лишнее. Есть более короткая и надежная функция ValIsNull

"chess" написал:&

Это у Вас побитовое И? А зачем?

Спасибо за конструктивные предложения и критику. И так, исправленый вариант …
(кстати, а что такое <пустое значение> в ValIsNull)

function us_0(Dataset) {
 
        // текущая дата
        var CurrentData = new Date().setHours(0, 0, 0, 0);
 
        // дата из поля 'планируемая дата начала' плюс одна секунда
        var EstimatedStartDate = new Date(Dataset.Values('EstimatedStartDate')).getVarDate()+1
 
        if ((EstimatedStartDate < CurrentData) && (Dataset. ValIsNull ('StartDate')) ) 
        {return true }
        else {return false}             
}

"chess" написал:(кстати, а что такое <пустое значение> в ValIsNull)

Можно прочитать вот тут

Показать все комментарии