2017-03-15 4 views
0

kann jemand mir eine korrekte Lösung für dieses Programm.Wie alle Werte mit foreach-Schleife zu drucken.Ich habe versucht, aber ich habe einen Fehler als undefined Werte Vielen Dank im Voraus ... Ich warte für die Antwort ...Zugriff auf die JSON-Elemente mit Schleife in Nodejs

differ.json: 


{ 
"table": 
[ 
    { 
     "place": 
     { 
     "STATE":"TAMILNADU", 
     "DISTRICT":"VELLORE" 
     } 
    }, 
    { 
    "place": 
    { 
     "STATE":"KERALA", 
     "DISTRICT":"ALAPHUZHA" 
    } 
    }, 
    { 
    "place": 
    { 
     "STATE":"ANDHRA PRAADESH", 
     "DISTRICT":"KUNTUR" 
    } 
    } 
] 
} 
Nodejs file: 

var fs = require('fs'); 
var obj1 = fs.readFileSync('differ.json', 'utf8'); 
var data=JSON.parse(obj1); 
var countobjects = Object.keys(data).length; 
console.log(countobjects); 
for(var place in data.table) 
{ 
    for(var field in data.table[place]) 
    { 
     console.log("State:" + data.table[place].field); 
     console.log("District:" + data.table[place].field); 
    } 
} 

Antwort

1

können Sie forEach verwenden, wie unten:

data.table.forEach(function(element){ 
    console.log(element.place.STATE); 
    console.log(element.place.DISTRICT); 
}) 
+1

sehr Dank bro für Ihre schnelle Antwort, es ist Arbeit perfekt ... – vigneshRavi

0

sollten Sie of statt in für Ihre Schleife werden, und es kann mit ES6 String vereinfacht werden Vorlage Literale wie so ...

const data = { "table": [{ "place": { "STATE":"TAMILNADU", "DISTRICT":"VELLORE" } }, { "place": { "STATE":"KERALA", "DISTRICT":"ALAPHUZHA" } }, { "place": { "STATE":"ANDHRA PRAADESH", "DISTRICT":"KUNTUR" } }] } 
 

 
for (const d of data.table) { 
 
    const s = `State: ${d.place.STATE}\nDistrict: ${d.place.DISTRICT}` 
 
    console.log(s) 
 
}

+0

thankyou Sir .... – vigneshRavi

Verwandte Themen