从数组搜索之间的JavaScript日期时间

时间:2017-10-04 12:10:58

标签: javascript jquery

我有Schedule数组,包含开始/结束日期时间及其布局名称。

let schedule=[
  {
    "start": "2017-10-01 08:00:00",
    "end": "2017-10-01 09:00:00",
    "layout": "layout1.json"
  },
  {
    "start": "2017-10-01 10:00:00",
    "end": "2017-10-01 12:00:00",
    "layout": "layout2.json"
  },
]

let current_time = "2017-10-01 10:30:00";

如果当前日期时间**current_time**需要获取布局名称layout2.json。 需要使用JavaScript在上面的数组中搜索dateTime。

我已尝试下面的代码,但它不起作用..

 for (i = 0; i < schedule.length; i++){
   if (schedule[i].start >= current_time && schedule[i].end <= current_time){  
     return schedule[i].layout;
    }
 }

帮助我,谢谢

1 个答案:

答案 0 :(得分:1)

您需要在比较之前将日期转换为js日期。

for (i = 0; i < schedule.length; i++){
    if (new Date(schedule[i].start)<= new Date(current_time) && new Date(schedule[i].end) >= new Date(current_time)){  
      return schedule[i].layout;
     }
 }