如何在JavaScript中返回任务end_date为true的日期

问题描述

我不想返回一个日期,而是要返回所有已完成的任务。

假设我的end_date任务是

  • Jan。 2020年30月

  • Jan。 2017年30月

  • Jan。 1987年30月

到目前为止,下面的代码仅返回

  • 一月。 2020年30月

我的代码

const CalTaskHasEnded = Task => {
      return new Date(task.end_date).getDay() === new Date().getDay();
   };

但这只会返回任务结束日期列表中的一个日期。

如何编写此代码以能够返回所有已结束end_date的任务。即任务已经结束。

解决方法

您可以选择是否提前确认日期

const CalTaskHasEnded = (task:Task ) => {
      return new Date(task.end_date).getTime() <= new Date().getTime();
   };
 
 let tasks = [{
    end_date:'Jan. 30 2020'
},{
    end_date:'Jan. 30 2017'
},{
    end_date:'Jan. 30 1987'
},{
    end_date:'Jan. 30 2027'
}]

console.log(tasks.filter(CalTaskHasEnded));
,

感谢RamiReddy的帮助,我已经解决了这个问题

const calTaskHasEnded = Task => {
    if (task.has_ended){
       return new Date().getDay();
       }
    };