以下のjQuery関数を使用して、以下のJSONメッセージを解析しています。JSON メッセージを観察するとわかるように、friends.data 配列の 2 番目のオブジェクトには「statuses」アイテムがなく、メイン配列の最初と最後のオブジェクトとは異なり、「name」と「id」のみがあります。それにもかかわらず、 $.each(friend.statuses, function(j, status) 関数は次のアイテムに進まずに 2 番目のアイテム (「ステータス」エントリがない) で停止するため、メッセージ全体の解析に問題があります ( $.each(friend.statuses, function(j, status) 関数の前後にいくつかのロジックを追加して、既存のアイテム (「ステータス」) ですが、成功しませんでした。どうすれば、メイン配列のこの 2 番目のアイテムを「スキップ」して、2 番目の $.
Function:
$.each(response.friends.data, function(i, friend){
$.each(friend.statuses, function(j, status){
alert(status.message);
});
});
JSON Message:
{
"id": "idValue",
"friends": {
"data": [
{
"name": "NameValue",
"id": "idValue",
"statuses": {
"data": [
{
"message": "Msg1",
"updated_time": "Date",
},
{
"message": "Msg2",
"updated_time": "Date",
},
],
}
},
{
"name": "NameValue",
"id": "idValue",
}
{
"name": "NameValue",
"id": "idValue",
"statuses": {
"data": [
{
"message": "Msg1",
"updated_time": "Date",
},
{
"message": "Msg2",
"updated_time": "Date",
},
],
}
}
],
}
}