Jak należałoby podjąć javascript tablicę obiektów, takich jak:Suma wartości javascript obiekt propertyA z samego obiektu propertyB w tablicę obiektów
my objArr = [
{key:Mon Sep 23 2013 00:00:00 GMT-0400, val:42},
{key:Mon Sep 24 2013 00:00:00 GMT-0400, val:78},
{key:Mon Sep 25 2013 00:00:00 GMT-0400, val:23},
{key:Mon Sep 23 2013 00:00:00 GMT-0400, val:54}]
zduplikowanych kluczy przez zsumowanie wartości. Aby uzyskać coś takiego:
my reducedObjArr = [
{key:Mon Sep 23 2013 00:00:00 GMT-0400, val:96},
{key:Mon Sep 24 2013 00:00:00 GMT-0400, val:78},
{key:Mon Sep 25 2013 00:00:00 GMT-0400, val:23}]
Próbowałem iteracji i dodanie do nowej tablicy, ale to nie działa:
var reducedObjArr = [];
var item = null, key = null;
for(var i=0; i<objArr.length; i++) {
item=objArr[i];
key = Object.keys(item)[0];
item=item[key];
if(!result[key]){
result[key] = item;
}else{
result[key] += item;}
}a
Dlaczego robisz 'key = Object.keys (pozycja) [0]; item = item [key]; '? Już wiesz, że nazwa to 'klucz', więc po prostu wykonaj' item.key' lub 'objArr [i] .key'. Ponadto użycie indeksu '[0]' niekoniecznie zawsze da tę samą właściwość. – user2736012