繁体   English   中英

用对象循环遍历数组

[英]Loop through array with objects

我有以下问题,现在两天都无法解决。 我有一个数组

我尝试用next for..in循环遍历它

for (var key in products2) {
    if (products2.hasOwnProperty(key)) {
        console.log(products2[key].properties);
    }
}

但是我无法输出properties对象的值。 该数组是产品列表,每个产品都有自己的属性。

您可以使用Lodash:

_.forEach([1, 2], function(value, index) {
    console.log(value, index);
});

或者您可以使用JavaScript:

var array = [1, 2]
for (var i in array) {
   alert(array[i]);
}
for (var key in products2) {
    console.log(products2[key].properties);
}

produts2 ”数组中没有“ Key ”属性。 关键变量是“ products2”数组的索引。 由于如果条件未变为True,则不会执行控制台语句。

首先,使用JSON.parse(product2)将其转换为对象,然后使用您的代码

它看起来像是带有对象的数组。

[{...}, {...}, {...}, ...]

为了迭代元素,可以使用Array#forEach

products2.forEach(function (o) {
    Object.keys(o).forEach(function (k) {
        console.log(k, o[k]); // show key and value
    });
});

尝试这个

for (var i in products2) {
  for (key in products2[i]) {
    console.log(key + ":" + products2[i][key]);
  }
}

您有一组对象。 因此,首先您必须遍历数组项,然后才能遍历其键。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM