folgende Daten So betrachten:Gib mir alle Elemente im Array, das das gleiche Datum haben, JS
{
post_views:[
{
id:1,
post_id:5,
ip_address:"xxx",
created_at:"2016-08-08T22:22:45+0000",
updated_at:"2016-08-08T22:22:45+0000"
},
{
id:2,
post_id:5,
ip_address:"yyy",
created_at:"2016-08-08T22:23:00+0000",
updated_at:"2016-08-08T22:23:00+0000"
},
...
]
}
Wie würden bekomme ich alle Elemente erhalten, die passen: 2016.08.08 ??
Was haben Sie versucht?
Lodashes, Filter:
let datesThatMatch = filter(this.state.data.post_views, (views) => {
return moment(views.created_at).format('MMMM Do YYYY') === moment(views.created_at).format('MMMM Do YYYY')
});
console.log(datesThatMatch);
Ich interessiere mich nicht über zu welcher Tageszeit sie an, nur so lange, wie der Tag erstellt wurden sie auf Spiel erstellt wurden.
Hilfe?
aktualisieren
ich nur realisiert Ich bin auch darüber geht alles schief, denn während ich Sie nur einen Teil der Daten zeigte, gibt es Hunderte dieser Objekte sind i das Array (wenn nicht Tausende) und das Ziel ist zu sagen, ok, es gibt 16 Spiele für 2016-08-08, 50 Spiele für x Datum, 14 Treffer für y Datum, was die Komplexität dieses Filters erhöht.
Warten, dass Bedingung, die Sie in dem 'filter' Rückruf haben - versucht, es wirklich genau die gleiche Datum, an beiden Seiten im Vergleich zu bekommen? – vlaz
Das ist einfach, sie passen beide zusammen, also einfach alle? – adeneo
@vld Ich verstehe deine Frage nicht. Ich möchte nur alle Elemente aus dem Array, die mit dem Datum im angegebenen Format übereinstimmen. Momentan ist das Array leer, wenn es zurückkehrt. – TheWebs