gpt4 book ai didi

javascript - 将日期字符串与 jquery 中的日期对象进行比较

转载 作者:行者123 更新时间:2023-11-30 13:40:44 24 4
gpt4 key购买 nike

我收到了一个如下所示的日期字符串:

Thu%20Mar%2011%202010%2015%3A09%3A11%20GMT%2B0000%20(BST)

我想将这个日期与今天的日期进行比较,并希望确定上面的字符串是否已经发生。由于我对 jquery/javascript 的了解有限,我写了这个:

var str = new Date("Thu%20Mar%2011%202010%2015%3A09%3A11%20GMT%2B0000%20(BST)");
var date = new Date();
date.setTime(date.getTime());
if (date > str) {
alert('This date has passed');
} else {
alert('This date has NOT passed');
}

然而,这总是返回第二个结果,即使日期字符串肯定已经过去了(它是大约二十分钟前的时间)。我哪里错了

最佳答案

  1. 您需要对字符串进行转义:

    var then = new Date(decodeURIComponent("Thu ... "));
  2. 没有必要像那样设置新日期实例的时间 - 这什么都不做:

    d.setTime(d.getTime());
  3. 您需要比较每个日期对象的 getTime() 返回值

    var then = new Date(decodeURIComponent("Thu ... "));
    var now = new Date();
    if (now.getTime() > then.getTime()) { ... }

编辑unescape更改为decodeURIComponent

关于javascript - 将日期字符串与 jquery 中的日期对象进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2426213/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com