Rumah > Soal Jawab > teks badan
Saya mempunyai pelbagai objek seperti yang ditunjukkan di bawah:
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" } ];
Saya ada tarikh, contohnya "22-02-2016". Bagaimana untuk mendapatkan tatasusunan semua objek yang tarikhnya sama dengan tarikh tertentu? Jadi dalam contoh ini saya akan mendapat acara B dan D.
P粉7712333362024-01-30 09:56:44
PenggunaArray.prototype.filter() adalah seperti berikut:.
var filteredEvents = events.filter(function(event){ return event.date == '22-02-2016'; });
P粉4890817322024-01-30 09:39:20
Anda boleh menggunakan fungsi filter()
tatasusunan:
function filter_dates(event) { return event.date == "22-02-2016"; } var filtered = events.filter(filter_dates);
filter_dates()
Kaedah boleh berdiri sendiri, digunakan semula seperti dalam contoh ini, atau sebaris sebagai kaedah tanpa nama - pilihan adalah milik anda sepenuhnya =]
Alternatif cepat/mudah ialah gelung mudah:
var filtered = []; for (var i = 0; i < events.length; i++) { if (events[i].date == "22-02-2016") { filtered.push(events[i]); } }