首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用angularjs检查所选时间是否小于当前时间?

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

Stack Overflow用户
提问于 2015-12-12 12:57:04
回答 2查看 17.7K关注 0票数 3

我使用过时间选择器我这里有一些时间我想检查选择的时间是否小于当前时间或大于当前时间示例我选择了11:00 AM;var selectedtime.for=‘11:00 AM’如何检查11:00 AM小于当前时间或大于当前时间.i需要显示警报我对此技术不熟悉请帮助我

代码语言:javascript
复制
$scope.date="Sat Dec 12 2015 00:00:00 GMT+0530 (India Standard Time)";
$scope.time = "11:00 AM";

对于这个特定的日期,选择的时间是过去的还是将来的,我需要检查如何获取当前时间,并检查选择的时间,请有人帮助我

3.我试过了,但还是解决不了问题,请帮帮我

代码语言:javascript
复制
var now = new Date();
 var nowTime = new Date('1/1/1900 ' + now.toLocaleTimeString(navigator.language, {
        hour: '2-digit',
        minute: '2-digit',
        hour12: true
      }));
      console.log(nowTime);
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-12 13:02:20

你可以通过使用两个Date的时间戳值在javascript中轻松地进行比较。

在日期上调用.getTime(),它将返回自1970年1月1日以来经过的毫秒数。

代码语言:javascript
复制
var now = new Date();
var d = new Date( ... ); // pass all the parameters you need to create the time
if (now.getTime() > d.getTime()) {
    // the date stored in `d` is in the past.
}

如果你只需要比较小时和分钟,你可以调用.getHours().getMinutes()。然后计算d.getHours()*60+d.getMinutes()的总分钟数,然后比较此值。

代码语言:javascript
复制
var now = new Date();
var d = new Date( ... );

var nowTime = now.getHours()*60+now.getMinutes();
var dateTime = d.getHours()*60+d.getMinutes();

// compare nowTime and dateTime
if (newTime > dateTime) {
    // ....
}

在阅读你的评论后使用

代码语言:javascript
复制
var getResult = 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() + " " + selectedTime);
    if (nowTime.getTime() > userTime.getTime()) {
        return "passed";
    }else if (nowTime.getTime() == userTime.getTime()) {
        return "present";
    }else {
        return "future";
    }
}

对于angular版本,请检查此http://plnkr.co/edit/UmpfBFR1zvL7qs9LpOjO?p=preview

票数 8
EN

Stack Overflow用户

发布于 2015-12-12 13:21:50

由于要将此日期与当天进行比较,因此可以使用今天的信息加上输入的时间来构建一个新的Date()对象。

代码语言:javascript
复制
var time = "11:00 PM";
var dt = (now.getMonth()+1) + "/" + now.getDate() + "/" + now.getFullYear() + " " + time;

然后将其与现在进行比较:

代码语言:javascript
复制
var now = new Date();
var userval = new Date(dt);
if (now > userval) //do logic

Here is an example Fiddle

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34236429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档