Javascript:解析json列表

时间:2016-04-26 09:06:11

标签: javascript json

我是javascript的新手,抱歉愚蠢的问题和可能的重复。请建议我解析json的有效方法。我想提取list字符串Maktg

{  
   "d":{  
      "results":[  
         {  
            "Maktg":"BATTERY",
            "W":"1000",
            "IS":"",
            "IM":"",
            "IW":"",
            "__metadata":{  
               "type":"s",
               "uri":"https://some_url)"
            },
            "IMaktg":"",
            "Matnr":"0001",
            "Stlan":"1"
         },
         {  
            "Maktg":"CONTROL",
//etc...

3 个答案:

答案 0 :(得分:1)

试试这个:

var jsonArray = yourJSON.d.results;
var results = [];
jsonArray.forEach(function(object){
    results.push(object.Maktg);
}
console.log(results);

答案 1 :(得分:1)

我们有一个JSON:

{  
   "d":{  
      "results":[  
         {  
            "Maktg":"BATTERY",
            "W":"1000",
            "IS":"",
            "IM":"",
            "IW":"",
            "__metadata":{  
               "type":"s",
               "uri":"https://some_url"
            },
            "IMaktg":"",
            "Matnr":"0001",
            "Stlan":"1"
         }
      ]
   }
}

最好将字符串JSON转换为更有用的JavaScript对象:

  

JSON.parse()方法可选地将字符串解析为JSON   转换解析产生的值。

var 
  jsonStr = '{"d":{"results":[{"Maktg":"BATTERY","W":"1000","IS":"","IM":"","IW":"","__metadata":{"type":"s","uri":"https://some_url"},"IMaktg":"","Matnr":"0001","Stlan":"1"}]}}';
  jsonObj = JSON.parse(jsonStr),
  results = jsonObj.d.results;

for (var i in results) {

  console.log(results[i]['Maktg']);

  /*
    results[i]['W']
    results[i]['IS']
    results[i]['IM']
    results[i]['__metadata']['type']
    and etc...

  */
}

答案 2 :(得分:0)

请尝试像这样使用JSON.parse获取输出。

var getData = JSON.parse(data);

for(i=0;i<getData.d["results"].length;i++)
{
   alert(getData.d["results"][i].Maktg);
   alert(getData.d["results"][i].W);
   //etc...
}