如何在数组中迭代对象的值?

10 浏览
0 Comments

如何在数组中迭代对象的值?

我有一个如下的对象:\n

{
  username: {
    hobby: [
      {
        hobby1: "cricket",
        hobby2: "swim"
      },
      {
        hobby3: "dance",
        hobby4: "zumba"
      }
    ]
  }
}

\n我可以很容易地使用forEachconsole.log(item),但是如果我只想要独立的值cricket、swim、dance、zumba(不需要hobby1hobby4),有人可以告诉我如何提取这些值吗?

0
0 Comments

如何在数组中遍历对象值?

出现的原因:

在处理数组中的对象时,我们经常需要遍历对象的值。这是因为对象通常包含多个属性,而我们需要对每个属性的值进行操作或访问。

解决方法:

为了遍历数组中的对象值,我们可以使用嵌套的for循环。下面是一个示例代码:

let obj = {
  username: {
    hobby: [
      {
        hobby1: "cricket",
        hobby2: "swim"
      },
      {
        hobby3: "dance",
        hobby4: "zumba"
      }
    ]
  }
}
for(let hobbies of obj.username.hobby) {
  for(let hobby in hobbies) {
    console.log(hobbies[hobby])
  }
}

在上述代码中,我们使用了两个for循环。外部的for循环用于遍历数组中的每个对象,而内部的for循环用于遍历每个对象中的属性。

在内部的for循环中,我们使用了`hobby`作为迭代变量,用于遍历对象中的属性。通过`hobbies[hobby]`,我们可以获取到每个属性的值,并通过`console.log()`将其打印出来。

通过这种方式,我们可以轻松地遍历数组中对象的值,并对其进行操作或访问。这种方法在处理复杂的数据结构时非常有用。

0
0 Comments

原因:这个问题的出现是因为需要在一个数组中迭代对象的值。

解决方法:可以使用for-in循环来迭代对象的属性,并将属性的值存储在一个新的数组中。

以下是解决方法的代码示例:

var json = {
    username: {
        hobby: [{
            hobby1: "cricket",
            hobby2: "swim"
        },
        {
            hobby3: "dance",
            hobby4: "zumba"
        }]
    }
};
var hobbies = json.username.hobby;
var hobbies_arr = [];
var i = 0;
for (var item in hobbies) {
    item = hobbies[item];
    for (var hobby in item) {
        hobby = item[hobby];
        hobbies_arr[i] = hobby;
        i++;
    }
}
console.log(hobbies_arr);

输出结果将是:

Array [ "cricket", "swim", "dance", "zumba" ]

以上就是如何在一个数组中迭代对象值的方法。

0
0 Comments

问题的出现原因是使用了不支持ES6语法的浏览器(如IE 11),导致代码中的箭头函数和Object.entries方法无法正常工作。解决方法是使用一个支持ES6语法的浏览器来运行代码,或者在使用这些语法的情况下选择其他解决方案,以保证代码的兼容性。

0