2016-04-26 7 views
1

Ich bin neu in Javascript, sorry für dumme Frage und mögliche Duplikate. Bitte schlagen Sie mir effiziente Art der Analyse vor json. Ich möchte list von Strings holen Maktg:Javascript: parse json zu Liste

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

Antwort

1

Wir haben eine JSON:

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

Lest String JSON in nützlichere JavaScript-Objekt konvertieren:

Die JSON.parse() -Methode analysiert eine Zeichenfolge als JSON, optional den durch das Parsen erzeugten Wert transformieren.

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... 

    */ 
} 
1

Try this:

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

Bitte versuchen Sie Ausgabe mit JSON.parse wie diese zu erhalten.

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... 
}