用对象循环数组

问题描述 投票:0回答:5

我有以下问题,我现在无法解决2天。我有一个array

我试着用下一个for..in循环遍历它

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

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

javascript jquery arrays for-loop
5个回答
1
投票
for (var key in products2) {
    console.log(products2[key].properties);
}

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


1
投票

你可以使用Lodash:

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

或者您可以使用JavaScript:

var array = [1, 2]
for (var i in array) {
   alert(array[i]);
}

0
投票

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

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

对于迭代元素,您可以使用Array#forEach

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

0
投票

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


0
投票

试试这个

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

你有一个对象数组。首先,您必须遍历数组项,然后您可以遍历其键。

© www.soinside.com 2019 - 2024. All rights reserved.