我有以下代碼減少功能不能提供所期望總和
var result_goals_against = [];
memo_goals.reduce(function(res, value) {
if (!res[value.player_id]) {
res[value.player_id] = {
goals_against: 0,
player_id: value.player_id
};
result_goals_against.push(res[value.player_id])
}
res[value.player_id].goals_against += value.goals_against;
return res;
}, {});
這是輸出:
我的關注:row的實際值應爲(1.row = 10),(6.row = 2)和(其餘爲0),腳本應該總結,但它似乎只是鏈接值。我試圖將+= value.goals_against;
修改爲+= +value.goals_against;
,因爲我在mongodb中的值是字符串而不是數字。
樣品備忘錄數據陣列
memo_goals =
[
{
"_id" : "Qzg3P8RGakoT3WvRC",
"match_id" : "f3YWd2WKKz9dCW4CH",
"team_id" : "2PKzW3Yb27vMqfDYh",
"player_number" : "7",
"player_id" : "8KnyCJ3KiqBYmAQ26",
"saves" : "12",
"goals_against" : "2"
},
{
"_id" : "b39KhqCXRFDGccpdW",
"match_id" : "9bKWj27hF5P87Ags4",
"team_id" : "2PKzW3Yb27vMqfDYh",
"player_number" : "7",
"player_id" : "8KnyCJ3KiqBYmAQ26",
"saves" : "16"
}
];
哪裏數據?我有一種感覺,你試圖在這裏使用字符串而不是數字... – melancia
請顯示你的memo_goals結構和它的一個例子! – cFreed
@cFreed我添加了示例數據 – justdiehard