Javascript获取下周二或周五的日期(最近)

Egi*_*idi 2 javascript date

我需要编写一个函数来返回下周二或下周五的日期(例如:2014/08/28),以最近的一天为准.但有一点点狡辩:如果今天是星期二或星期五,如果它是在22:00之前它应该返回今天的日期,另一方面如果它在22:00之后或等于22:00它应该在下周二返回或星期五的约会,以下一个为准.

我不知道如何开始编码.

问候,

hex*_*D49 5

检查下面的sninppet.也许我可以让它更优化,但或多或​​少,我只是遵循上面的评论中的伪代码.

function closest_tuesday_or_friday() {
  var today = new Date(), tuesday, friday, day, closest;

  if(today.getDay() == 2 || today.getDay() == 5){
    if(today.getHours() < 22){
      return today.getFullYear() + "/" + (today.getMonth() + 1) + "/" + today.getDate();
    }
  }else{
    day = today.getDay();
    tuesday = today.getDate() - day + (day === 0 ? -6 : 2);
    friday = today.getDate() - day + (day === 0 ? -6 : 5);
  }

  if(tuesday < friday){
    closest = new Date(today.setDate(tuesday));
  }else{
    closest = new Date(today.setDate(friday)); 
  }
  return closest.getFullYear() + "/" + (closest.getMonth() + 1) + "/" + closest.getDate();
}

console.log(closest_tuesday_or_friday());
Run Code Online (Sandbox Code Playgroud)

工作jsBin