以特定格式转换JSON格式

时间:2016-08-10 13:59:44

标签: javascript jquery arrays json jsonobject

我有像

这样的JSON对象

countryMap = Object {KE: 10, BR: 9, NP: 7}

现在我希望它的形式像

[
      {
          "code": "KE",
          "value": 10
      },
      {
          "code": "BR",
          "value": 9
      },
      {
          "code": "NP",
          "value": 7
      }

];

我尝试的是

$.each(countryMap, function(key, value){
        item = {};
        item ["code"] = key;
        item ["value"] = value;
        totalCountries+=1;
        jsonObj.push(item);
}); 

但我得到的是

    [
      {
          "code": "KE"
          "value": 10
      },
      {
          "code": "BR"
          "value": 9
      },
      {
          "code": "NP"
          "value": 7
      }

];

请注意,代码值后缺少comma

如何获得我想要的确切格式?

2 个答案:

答案 0 :(得分:2)

试试这个..



countryMap = {KE: 10, BR: 9, NP: 7};
var jsonObj=[];
$.each(countryMap, function(key, val){
        jsonObj.push({code:key,value:val});
}); 
alert(JSON.stringify(jsonObj));

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

你应该试试这个:

$.each(countryMap, function(key, value){
   item = {"code": key, "value": value};
   totalCountries+=1;
   jsonObj.push(item);
});