在数组中查找值之间的日期

时间:2017-10-08 15:21:40

标签: jquery date

我有一个数组,其中一些日期为“dd / mm / yyyy”,格式为字符串。

var myDates = [ "01/04/2017", "11/12/2017", "12/09/2017", "02/03/2017" ];

1)我如何只检索“01/02/2017”和“01/12/2017”之间的日期?

2)如何将“dd / mm / yyyy”字符串转换为相同格式的日期?

此致 埃利奥·费尔南德斯

1 个答案:

答案 0 :(得分:0)

使用Array#filter方法根据所需条件进行过滤。

var myDates = ["01/04/2017", "11/12/2017", "12/09/2017", "02/03/2017"];

var start = new Date(2017, 2, 1), // start date
  end = new Date(2017, 12, 1); // end date



var res = myDates.filter(function(date) {
  // parse the date
  var d = new Date(...date.split('/').reverse());
  // or for older browser which doesn't support ES6 spread syntax
  // var dA = date.split('/');
  // var d = new Date(dA[2], dA[1], dA[0]);  
  
  // check the date is in between start and end
  return d >= start && d <= end;
});

console.log(res);