Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
4
rated 0 times [  5] [ 1]  / answers: 1 / hits: 87656  / 8 Years ago, fri, february 5, 2016, 12:00:00

I have an array of objects, something as follows:



var events = [
{ date: 18-02-2016, name: event A },
{ date: 22-02-2016, name: event B },
{ date: 19-02-2016, name: event C },
{ date: 22-02-2016, name: event D }
];


And I have a date, for example 22-02-2016. How can I get an array with all object which date is the same as the given date? So in this example I would get events B and D.


More From » javascript

 Answers
181

You could use array's filter() function:



function filter_dates(event) {
return event.date == 22-02-2016;
}

var filtered = events.filter(filter_dates);


The filter_dates() method can be standalone as in this example to be reused, or it could be inlined as an anonymous method - totally your choice =]



A quick / easy alternative is just a straightforward loop:



var filtered = [];
for (var i = 0; i < events.length; i++) {
if (events[i].date == 22-02-2016) {
filtered.push(events[i]);
}
}

[#63429] Wednesday, February 3, 2016, 8 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
danalexc

Total Points: 114
Total Questions: 119
Total Answers: 103

Location: Hungary
Member since Wed, Nov 9, 2022
2 Years ago
;