【问题标题】:Check if date is greater than current date at 17:30检查日期是否大于当前日期 17:30
【发布时间】:2016-11-21 19:41:23
【问题描述】:

我有一个日期和一个时间参数,我想检查该日期/时间是否大于当前日期 17:30。

我希望我们能找到一种使用矩 js 的方法。有可能吗?

我正在尝试这个:

let d = moment(new Date()).set({hour:17,minute:30});
let t = moment(myDate).set({hour:paramHour,minute:paramMinute});

if ( t.isAfter(d) ) {
    console.log('true');
}

谢谢。

【问题讨论】:

  • 因此在今天创建一个日期并设置小时和分钟,并将其与您要检查的日期进行比较。你尝试了什么?
  • 您不需要涉及第三方库。向您展示“日期和时间参数”以及您尝试过的一些代码。你甚至懒得检查 mdn 吗?
  • 是的,有时我们会感到困惑和缺乏灵感,你知道……当你寻求帮助时。我将编辑我的问题。

标签: javascript typescript momentjs


【解决方案1】:

您可能不需要这里的时间。这样的事情应该可以正常工作:

var now = new Date;
var cutoff = new Date;
cutoff.setHours(17, 0, 0, 0); /* Param Order: Hours, Minutes, Seconds, Milliseconds */

if (now >= cutoff) {
    // Date is past 17:30
}

【讨论】:

【解决方案2】:

它可以像比较两个打字稿日期对象一样简单:

(new Date(2016,11,21,2,53).getTime() > new Date(2016,11,21,5,30).getTime())

当然,这些日期不会这样定义 - 一个将作为参数传入,一个将在运行时创建。

【讨论】:

  • 是的,就是这样,我需要先定义日期/今天,然后将小时与分钟分开,并创建一个新日期进行检查。
  • 查看 Yona 的答案以获得今天的日期。 new Date 会自动获取它,然后您可以手动设置小时/分钟。然后只需与您的参数进行比较。
猜你喜欢
  • 2015-01-04
  • 1970-01-01
  • 2023-03-19
  • 2021-07-12
  • 2015-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多