使用nodejs中的loop访问json元素

使用nodejs中的loop访问json元素,json,node.js,for-loop,Json,Node.js,For Loop,谁能给我一个正确的解决方案这个程序。如何打印所有的值使用foreach循环。我尝试了,但我得到了一个错误作为未定义的值提前感谢…我正在等待答复 differ.json: { "table": [ { "place": { "STATE":"TAMILNADU", "DISTRICT":"VELLORE" } }, { "place": { "STATE":"KERALA",

谁能给我一个正确的解决方案这个程序。如何打印所有的值使用foreach循环。我尝试了,但我得到了一个错误作为未定义的值提前感谢…我正在等待答复

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);
    }
}
您可以在下面使用forEachas:

data.table.forEach(function(element){
  console.log(element.place.STATE);
  console.log(element.place.DISTRICT);
})
您应该在循环中使用of而不是in,并且可以使用ES6字符串模板文本简化它,如

const data={表格:[{地点:{州:泰米尔纳德邦,区:维洛尔},{地点:{州:喀拉拉邦,区:阿拉法查},{地点:{州:安得拉普拉德什,区:昆图尔} 用于数据表的常数d{ const s=`州:${d.place.State}\n州:${d.place.DISTRICT}` 控制台日志 }