0

3 つのデータ セットを持つ JSON オブジェクトを反復する jQuery.each ループがありますが、何らかの理由で、ループは 3 つではなく 13 個のオブジェクトを出力し、そのうちの 10 個は空です。これが私のコードです:

var teammates_info=[];
var teammate_json={"teammates":[{"id":"12","first_name":"Bob","last_name":"Johnson","user_img":"","status":"offline","new_messages":"0"},{"id":"9","first_name":"John","last_name":"Doe","user_img":"","status":"offline","new_messages":"0"},{"id":"10","first_name":"test","last_name":"test","user_img":"","status":"offline","new_messages":"0"}]};

jQuery.each(teammate_json.teammates,function(index,teammate){
    teammates_info[teammate.id]=[{"first_name":teammate.first_name,"last_name":teammate.last_name,"user_img":teammate.user_img,"status":teammate.status,"new_messages":teammate.new_messages}];
}); 

console.log(teammates_info.length); //outputs 13 not 3

document.write(teammates_info);I getを実行すると,,,,,,,,,[object Object],[object Object],,[object Object]、作成中の空の配列要素がすべて表示されます。

オブジェクトの配列を出力しようとしています。そうすれば、コードの後で のようにチームメイトのデータを参照できますが、teammates_info[12]["first_name"]3 つではなく 13 の配列要素が作成される理由に困惑しています。

4

1 に答える 1