0

サーバーから取得している以下のようなjsonデータがあります

result =     [
      {"transactions": 7, "products__name": "mark"}, 
      {"transactions": 12, "products__name": "vicky"}, 
      {"transactions": 30, "products__name": "daniel"},   
      {"transactions": 6, "products__name": "hurray "}]

今、私は余分な項目を追加し、上記の json 応答の辞書でキー名を変更したいと思います。結果を以下の形式で取得したいと考えています

 result =    [
        { label: "mark",  data: 7, color: "#4572A7"},
        { label: "vicky",  data: 12, color: "#4572A7"},
        { label: "daniel",  data: 30, color: "#4572A7"},
        { label: "hurray",  data: 6, color: "#4572A7"},
    ];

jquery上記のロジックを次のように実行したい

      var array = [];
      var dictionary = {};
      $.each(result, function(key,val){
              dictionary['label'] = val.products__name;
              dictionary['data'] = val.revenue;
              dictionary['color'] = '#4572A7';
              console.log(dictionary);
            array.push(dictionary)
          });
         console.log(array);
});

したがって、上記のjqueryループコードから、json配列をループして、さまざまなラベルとアイテムを持つ辞書を作成できますが、それをにプッシュするとnew array、最初の辞書だけが次のように配列に繰り返し挿入されます同じレコードが配列に 4 回表示されています

私のコードで何が問題なのですか?別の dic アイテムを新しい配列にプッシュするために何をする必要があるか教えてください。

4

1 に答える 1