{service: {
categories: [
{
name: "category1",
id: 1,
questions: [
{
id: 1,
question: "example trivia question here",
value: 2
}, {
id: 2,
question: "example trivia question here",
value: 3
}]
},
{
name: "category2",
id: 2,
questions: [
{
id: 3,
question: "example trivia question here",
value: 5
}
]
},
{
name: "category3",
id: 3
}
]
}};
對於每個類別,我試圖計算回答的瑣事問題。我如何獲得每個類別的答案總數(當存在價值時表示)?我認爲我的循環中出現了問題。我也嘗試過使用數組原型。對於noob問題抱歉。如何獲取嵌套在對象中的數組的總和?
$scope.questionCount = 0;
angular.forEach($scope.service, function(categories, questions) {
for (var i = 0; i < questions.length; i++) {
if (questions[i].value !== null){
triviaCount = 0
triviaCount += 1
$scope.questionCount.push(triviaCount)
}
}
});
您在for循環的每個迭代復位'triviaCount'爲零。 –
我覺得你想要像'angular.forEach($ scope.service.categories,function(category){...})'在頂層?然後在裏面,像你一樣的另一個循環已經經歷了這個類別的問題。實際上,在當前代碼中沒有任何地方訪問questions屬性 - 只需創建一個名爲「questions」的變量,該變量充滿了forEach中每個迭代對象的鍵。 –