gpt4 book ai didi

javascript - 比较不同年份的两个日期

转载 作者:行者123 更新时间:2023-11-29 17:53:30 26 4
gpt4 key购买 nike

我正在尝试比较两个日期,例如今天的日期 (20/12/2016) 和明年的日期 (01/01/2017)。如果 RenewalDate 是今年的代码,例如 22/12/2016,则代码可以正常工作。似乎只有明年的日期才不会承认今天不早于那个日期

var RenewalDate = new Date(result.RenewalDate);
var month = RenewalDate.getMonth()+1;
var year = RenewalDate.getFullYear();
if(day<10){
day='0'+day
}
if(month<10){
month='0'+month
}
var RenewalDate = day+'/'+month+'/'+year;
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0

var yyyy = today.getFullYear();
if(dd<10){
dd='0'+dd
}
if(mm<10){
mm='0'+mm
}
var today = dd+'/'+mm+'/'+yyyy;
if(today > RenewalDate)
{
alert("Date is greater than today");
}
else
{
alert("Date is less than today");
}

最佳答案

不要像您那样将日期转换为字符串进行比较,因为它将进行 string 比较而不是 date 比较。如果你这样做了,它甚至会在同一年内处理 22/11/2016 大于 20/12/2016

您可以简单地使用 today > renewalDatetoday.getTime() > renewalDate.getTime(),如下所示,

方法一:

var renewalDate = new Date(2017, 0, 1);
var today = new Date();

if(today > renewalDate)
{
alert("Date is greater than today");
}
else
{
alert("Date is less than today");
}

方法二:

    var renewalDate = new Date(2017, 0, 1);
var today = new Date();

if(today.getTime() > renewalDate.getTime())
{
alert("Date is greater than today");
}
else
{
alert("Date is less than today");
}

注意:方法一和方法二作用相同。

关于javascript - 比较不同年份的两个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41242805/

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