我有一个数组,其中一些日期为“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”字符串转换为相同格式的日期?
此致 埃利奥·费尔南德斯
答案 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);