比较当前日期和未来日期

Comparing current date and future date

本文关键字:日期 未来 当前日期 比较      更新时间:2023-09-26

情况我有一个来自Oracle数据库的动态表。有一个名为"ScheduledTime"的列,它是一个TIMEStamp/shortTime,该变量与客户端javascript数字时钟进行比较。如果scheduledTime变量在当前时间(js时钟)的特定时间内,那么我们将返回对表行的操作。

。如果"scheduledTime" = currentTime的<=15分钟,则颜色行为红色

当时间是23:00(晚上11点),并且有一个项目被安排在凌晨2点(第二天)时,逻辑认为该项目迟到了,因为它的读数为"2",进一步使表行颜色为红色。

/问题可能的解决方案我认为我应该在颜色编码之前运行一个条件,比较时间戳日期而不是时间。如果日期不相等,那么就不要执行颜色逻辑…你怎么看……

当前代码

 var t = new Date();
 for (var i = 1, row; row = tbl.rows[i]; i++) {
        var hm = row.cells[0].innerText.split(":");
        t.setHours(hm[0], hm[1], 0, 0);
        var r = (t.getTime() - current.getTime()) / 1000 / 60 / 60;

        if(r <= 0.25)
            row.className = "Red";
        else if (r > 0.25 & r <= 0.5)
            row.className = "Yellow";
        else if (r > 0.5 & r <= 2)
            row.className = "Green";

这个库将帮助您将表中的日期文本解析为一个真正的JS date()对象,您可以使用该对象进行进一步的比较/操作:

https://code.google.com/p/datejs/解析

在我需要进行时间范围计算的几个项目中,我使用了瞬间范围JavaScript库:https://github.com/gf3/moment-range

它应该能够处理你所需要的。但是,您需要使用完整的日期和时间。