Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript-使用for(key in json)-我想让json只包含对象_Javascript_Json_For Loop_Object - Fatal编程技术网

javascript-使用for(key in json)-我想让json只包含对象

javascript-使用for(key in json)-我想让json只包含对象,javascript,json,for-loop,object,Javascript,Json,For Loop,Object,我想使用for(key in json)但只使用其他每一个键。使用数组很简单,但我接收的json只包含对象 我已经问了一个smililair问题,尼斯人指出了一个打字错误以及为什么它不起作用。问题(我仍然有)是内容重复(即:我希望id=“1”中的第一个对象和id=“2”中的第二个对象,然后id=“1”中的第三个对象和id=“2”中的第四个对象再次出现,等等) 问题是我在id=“1”和id=“2”中得到了第一个对象,然后在id=“1”和id=“2”中又得到了第二个对象 例如,假设我有这个json文

我想使用
for(key in json)
但只使用其他每一个键。使用数组很简单,但我接收的json只包含对象

我已经问了一个smililair问题,尼斯人指出了一个打字错误以及为什么它不起作用。问题(我仍然有)是内容重复(即:我希望id=“1”中的第一个对象和id=“2”中的第二个对象,然后id=“1”中的第三个对象和id=“2”中的第四个对象再次出现,等等)

问题是我在id=“1”和id=“2”中得到了第一个对象,然后在id=“1”和id=“2”中又得到了第二个对象

例如,假设我有这个json文件:

"123":{
   "name":"someName",
   "age":"12",
   "health":{
      "heart":"OK",
      "lungs":"Not so good"
    }
},
"223":{
   "name":"someName1",
   "age":"42",
   "health":{
      "heart":"Not so good",
      "lungs":"OK"
    }
}
我想将第一位患者的姓名和肺部输入div id=“1”,将第二位患者的姓名和肺部输入div id=“2”

因此,问题是如何从
for(key in json)
函数中获取每个other键

这是我的密码。抱歉这么长的文字,我只是想说清楚。如果你还有其他问题,请告诉我。谢谢

    var data1 = document.getElementById("data1");
    var data2 = document.getElementById("data2");
    loadJSON(function(json) {
      var l = Object.keys(json).length;
      console.log("json start");
      for (var i = 0; i <= l; i++){
        console.log(i);
        if (i % 2 === 0){
          for (x in json) {
            data1.innerHTML+="<img src=" + json[x].picture + "/>";
            data1.innerHTML+=json[x].price_wrapper.price + json[x].price_thingy.suf + " modulo 0 + " + i;
            console.log("0" + i);
          }
        } else {
          for (x in json) {
            data2.innerHTML+="<img src=" + json[x].picture + "/>";
            data2.innerHTML+=json[x].price_wrapper.price + json[x].price_thingy.suf + " modulo 1 + " + i;
            console.log("1" + i);
          }
        } 
      }
    });
var data1=document.getElementById(“data1”);
var data2=document.getElementById(“data2”);
loadJSON(函数(json){
var l=Object.keys(json).length;
log(“json启动”);
对于(var i=0;i

这归功于@Ashwin

他对代码做了一点修改,现在可以了

loadJSON(function(json) {
  console.log("json start");
  var i = 0;
  var l = Object.keys(json).length;
  for (x in json){
    console.log(i);
    if (i % 2 === 0){
      data1.innerHTML+="<img src=" + json[x].picture + "/>";
      data1.innerHTML+=json[x].price_thingy.price + json[x].price_thingy.suf;
      console.log("0 " + l);
    } else {
      data2.innerHTML+="<img src=" + json[x].picture + "/>";
      data2.innerHTML+=json[x].price_thingy.price + json[x].price_thingy.suf;
      console.log("1 " + l);
    }
    i++;
  }
});
loadJSON(函数(json){
log(“json启动”);
var i=0;
var l=Object.keys(json).length;
for(json中的x){
控制台日志(i);
如果(i%2==0){
data1.innerHTML+=“”;
data1.innerHTML+=json[x]。price_thingy.price+json[x]。price_thingy.suf;
控制台日志(“0”+l);
}否则{
data2.innerHTML+=“”;
data2.innerHTML+=json[x]。price_thingy.price+json[x]。price_thingy.suf;
控制台日志(“1”+l);
}
i++;
}
});

您再次循环遍历整个json。如果我理解正确,您只需要带有键l[I]的json对象的值

let json = 
  {
    "123":{
      "name":"someName",
      "age":"12",
      "health":{
        "heart":"OK",
        "lungs":"Not so good"
      }
    },
    "223": {
      "name":"someName1",
      "age":"42",
      "health":{
        "heart":"Not so good",
        "lungs":"OK"
      }
    }
  }

let l = Object.keys(json)
console.log(l.length)

for(let i = 0; i < l.length; i++){
  let element = json[l[i]];
  console.log(`id=${i}, ${element.name}, ${element.health.lungs}`);
}
let json=
{
"123":{
“name”:“someName”,
“年龄”:“12岁”,
“健康”:{
“心”:“好的”,
“肺”:“不太好”
}
},
"223": {
“名称”:“someName1”,
“年龄”:“42”,
“健康”:{
“心”:“不太好”,
“肺部”:“正常”
}
}
}
设l=Object.keys(json)
console.log(长)
for(设i=0;i
以下是我的例子:

let json = 
  {
    "123":{
      "name":"someName",
      "age":"12",
      "health":{
        "heart":"OK",
        "lungs":"Not so good"
      }
    },
    "223": {
      "name":"someName1",
      "age":"42",
      "health":{
        "heart":"Not so good",
        "lungs":"OK"
      }
    }
  }

let l = Object.keys(json)
console.log(l.length)

for(let i = 0; i < l.length; i++){
  let element = json[l[i]];
  console.log(`id=${i}, ${element.name}, ${element.health.lungs}`);
}