IMit Karte und reduzieren Array von Objekten erhalten
var c = [{name: 'John'}, {name: 'John'}, {name: 'Tom'}];
eine Reihe von habe ich mag, dass die Methode reduzieren verwenden und die Landkarte folgende Ergebnisse zu erhalten:
result = [
{ name: "John", occurence: 2 },
{ name: "Tom", occurence: 1 }
]
Hier ein ist Versuch ich habe es versucht aber immer noch nicht ganz verstanden. https://jsfiddle.net/joeSaad/up3ddfzz/
c = [{
name: 'John'
}, {
name: 'John'
}, {
name: 'Simon'
}];
var d = c.reduce((countMap, word) => {
countMap[word.name] = ++countMap[word.name] || 1;
return countMap
}, []);
var e = c.reduce((countMap, word) => {
q = [];
countMap[word.name] = ++countMap[word.name] || 1;
var p = {
name: word.name,
occurence: countMap[word.name]
}
q.push(p);
return q
}, []);
console.log(e);
Hilfe sehr geschätzt. Vielen Dank im Voraus
Haben Sie vergessen, den Versuch zu schreiben? – Li357
@AndrewL. Vielen Dank! nur die Frage bearbeitet –
@ mike-c es scheint, dass der Lauf jetzt in meinem jsfiddle funktioniert nicht .. –