这个代码应该怎么修改 才能成立呢

img


使用replace代替符如何找到对应的日,获取当前时间怎么保证与之前的时间格式一致,此代码应该如何修改才能保证成立呢?

首先你在后面转换当前时间的时候没有补0,其次没必要这么麻烦,你直接转化成时间戳去比较会更方便


var dateNumber = dataDate.replace(/\-/g, "");
var year = date.getFullYear()
var month = date.getMonth() + 1
var strDate = date.getDate()
if (month >= 1 && month <= 9) {
    month = '0' + month
  }
  if (strDate >= 0 && strDate <= 9) {
    strDate = '0' + strDate
  }
  var nowNumber =  year + month + strDate ;
var date1=new Date(dataDate);
if(date1 == 'Invalid Date'){
alert("不是日期")
}else{
//看那你上面的注释就是想比较日期大小
var now = new Date();
//拼接日期,再做比较,就不用管时分秒
var now1= now.getFullYear() + "-" + (now.getMonth()+1) +"-" + now.getDate();
var date2= date1.getFullYear() + "-" + (date1.getMonth()+1) +"-" + date1.getDate();
//日期可以直接用 < > = 比较
if(new Date(date2)>new Date(now1)){//格式化拼接的日期,
//传进来的日期比当前日期大
}else{

}

}

进行两个日期之间的比较建议看一下:https://blog.csdn.net/yolo_link/article/details/126194964

20220901 这样获取日 直接字符串截取 。获取当前时间怎么保证与之前的时间格式一致 那你需要格式化 一下 获取的当前时间

那你不能默认字符串拼接,getMonth之后要主动ToString,保留2位,再拼接


var dateNumber = new Date(datadate).getTime()
var nowNumber = new Date().getTime()
return dateNumber  - nowNumber