如何使用angularjs检查所选日期和所选时间是否小于当前日期和时间?

时间:2015-12-12 17:51:18

标签: javascript jquery angularjs date

我已经使用了datepicker和timepicker我在这里有一些约会时间我想检查所选日期和时间是否小于当前日期和时间或gratter而不是当前日期和时间。例如我选择了日期var

Selected date = "Sat Dec 12 2015 ";
var Selected date ="Sat Dec 12 2015 00:00:00 GMT+0530 (India Standard Time)";

和选定时间上午11:00; var selectedtime='11:00 AM'  我如何检查所选日期和时间11:00 AM是否小于当前日期和时间或gratter而不是日期和当前时间。我需要显示提醒我这项技术的新手帮助我

$scope.date="Sat Dec 12 2015 00:00:00 GMT+0530 (India Standard Time)";
$scope.time = "11:00 AM";
   $scope.result = function () {
     var now = new Date();
     var nowTime = new Date((now.getMonth()+1) + "/" + now.getDate() + "/" + now.getFullYear() + " " + now.getHours()+":"+now.getMinutes());
     var userTime = new Date((now.getMonth()+1) + "/" + now.getDate() + "/" + now.getFullYear() + " " + $scope.time);
     if (nowTime.getTime() > userTime.getTime()) {
       return "passed";
     }else if (nowTime.getTime() == userTime.getTime()) {
       return "present";
     }else {
       return "future";
     }
   }

期望:对于此特定日期(2015年12月12日星期六00:00:00 GMT + 0530(印度标准时间))所选时间已过去或未来我需要确定请帮助我

1 个答案:

答案 0 :(得分:0)

首先,代码的第一部分不是有效的javascript,但我认为这是您已经发现的错误。

然后你可以计算毫秒数。使用该字符串,您可以提出日期:

var toCheck = new Date('Sat Dec 12 2015 00:00:00 GMT+0530 (India Standard Time)');

现在,您只需要当前日期和该日期的UNIX毫秒数:

var msToCheck = toCheck.getTime();

var msNow = Date.now();

现在你只是比较它们!

return msToCheck < msNow ? 'past' : 'future';

我希望这很有用