我想遍歷一個json對象並對具有相同值的元素在不同數組中進行計數。這是我的目標循環通過json對象並在不同數組中對具有相同值的元素進行計數
var testconn =
{"_total": 3,
"values":
[
{
"articlesRead": [
{ "articleId": 1001 },
{ "articleId": 1002 },
{ "articleId": 1003 },
{ "articleId": 1004 },
{ "articleId": 1005 },
{ "articleId": 1006 }
]
},
{
"articlesRead": [
{ "articleId": 1001 },
{ "articleId": 1002 },
{ "articleId": 2001 },
{ "articleId": 2002 },
{ "articleId": 2003 },
{ "articleId": 2004 }
]
},
{
"articlesRead": [
{ "articleId": 1001 },
{ "articleId": 3001 },
{ "articleId": 3002 },
{ "articleId": 3003 },
{ "articleId": 3004 },
{ "articleId": 3005 }
]
}
]
}
的示例中,我要算ID的數組中有多少exsist。因此,對於這個例子,我有768,16: 1001×3 1002×2 1003 X 1 1004 X 1 2001 X 1 等
我通過我的對象循環這樣
for (i = 0; i < testconn.values.length; i++) {
var c = testconn.values[i];
for (j = 0; j < c.articlesRead.length; j++) {
var a = c.articlesRead[j];
for (var key in a) {
if (a[key] is bigger then 1) {
count a[key]
}
return number of
}
}
}
非常好,這就是我一直在尋找的東西(是否需要注意if語句的常規形式?我不是很高級,並且想要了解你做了什麼) – pwavg 2012-08-17 14:11:43
不要忘記投票並選擇答案 – shi 2012-08-17 14:15:05
我使用三元運算符,它使事情變得更短,它與以下內容相同:if(id [a.articleId]){...} else {...} – shi 2012-08-17 14:31:47