设置日期而不设置TIme Javascript

时间:2018-05-14 18:15:24

标签: javascript

我正在尝试执行以下操作:

  1. 存储当天+1(明天的日期)(CurrentDay是StartDay,错误的命名别名,我的错误)
  2. 从第1步开始计算7天
  3. 每天检查presentDay,如果等于第7天,则运行我的逻辑。
  4. 我面临的问题是:

    1. DateObject I store以数字格式存储,它还节省了时间。我只想要比较日期。
    2. 是否可以直接比较日期?我真的不想使用第三方库。
    3. 任何帮助将不胜感激。

      代码:

      var d = new Date();
      var stdate = d.setDate(d.getDate() + 1); //output something like 1526407850028 ( last few digits changes every second)
      
      var weeklyDate = new Date();
      var wkdate = weeklyDate.setDate(weeklyDate.getDate() + 7); //output Ex :  1526926307437 
      
      var presentDay = new Date();
      var pdate = presentDay.setDate(presentDay.getDate());
      
      if (pdate == wkdate) { // I want only date comparison
          // my logic
      }
      

1 个答案:

答案 0 :(得分:0)

尝试将您的步骤更加分开。例如,为什么不通过调用Date.prototype.getDay()来比较日期值?然后你不会处理所有其他的东西。您还可以减少对new Date()的调用次数,因此整个过程将是:

//calculate target date
let d = new Date(); // returns an integer between 0-6
var stDay = (d.getDay()+1)%7; //tomorrow's day of week kept between 0-6 by modulus

//daily check runs in separate function   
let today = new Date();
if( today.getDay() === stDay){
  //logic
}

developer.mozilla.org - Date.prototype.getDay()