【问题标题】:Compare two date objects in javascript比较javascript中的两个日期对象
【发布时间】:2021-04-28 19:30:58
【问题描述】:

我想检查日期对象Thu Apr 29 2021 01:15:00 GMT+0530 (India Standard Time)是在当前时间之前还是之后,即new Date()

我尝试了基本的< 运算符,但它似乎不起作用。

我如何实现这一目标?提前致谢。

【问题讨论】:

  • 您可以分享一下您已经尝试过的minimal reproducible example 吗?
  • 基本上就是Thu Apr 29 2021 01:15:00 GMT+0530 (India Standard Time) < new Date()。我在 chrome 开发控制台中尝试了它以获得布尔值。
  • Thu Apr 29 2021 01:15:00 GMT+0530 (India Standard Time) < new Date() 不是有效的 JavaScript。你有错误吗?
  • 那我该如何比较?
  • Thu Apr 29 2021 01:15:00 GMT+0530 (India Standard Time) 来自哪里?

标签: javascript date datetime


【解决方案1】:

它应该与<> 运算符一起使用:

const d1 = new Date("Thu Apr 29 2021 01:15:00 GMT+0530");
let now = new Date();

[d1, now].forEach(d => console.log(d));

console.log(now > d1);          // false because now is less than d1
now.setDate(now.getDate() + 2); // add 2 days to the now date
console.log(now > d1);          // true because now is greater than d1

【讨论】:

    【解决方案2】:

    将您的字符串转换为 Date 对象,以便您可以比较这两者。 参考:MDN

    const my_date = new Date("Thu Apr 29 2021 01:15:00 GMT+0530 (India Standard Time)")
    const c_date = new Date()
    
    console.log(my_date > c_date)

    【讨论】:

    • 你不需要第二个日期,new Date(string) > Date.now() 将返回相同的结果。
    猜你喜欢
    • 2011-11-28
    • 2019-08-29
    • 1970-01-01
    • 2019-08-02
    • 1970-01-01
    • 2013-09-21
    • 1970-01-01
    相关资源
    最近更新 更多