Javascript/jQuery:循环访问对象内的数组值

Javascript/jQuery: Loop through array values inside an object

本文关键字:数组 对象 访问 jQuery 循环 Javascript      更新时间:2023-09-26
var myJSON =     
{"data":
    [{"obj1":"value1",
      "obj2":"value2"},
     {"obj1":"value3",
      "obj2":"value4"},
     {"obj1":"value5",
     "obj2":"value6"}]
};

我有一个看起来像上面的数组。我想遍历每个obj2并获取值。如何在Javascript/jQuery中做到这一点?

我尝试使用:

for (var i = 0; i < myJSON.data.length; i++) {
    console.log(i.obj2);
}

但看起来myJSON.data并没有返回长度......

i只是一个可用于访问数组的迭代器

for (var i = 0; i < myJSON.data.length; i++) {
    console.log(myJSON.data[i].obj2);
}
for (var i = 0; i < myJSON.data.length; i++) {
    console.log(myJSON.data[i].obj2);
}

问题是您正在尝试从 i 变量访问 obj2 键,这不是您的数组。试试这样一种方式:

for (var i = 0; i < myJSON.data.length; i++) {
    console.log(myJSON.data[i].obj2);
}

其他方法可以做同样的事情:

for(var i in d=myJSON.data){
  console.log(d[i].obj2);
}

myJSON.data.forEach(function(a){
  console.log(a.obj2)
})