在React(ES6)中迭代数组中的对象

时间:2018-01-26 15:02:30

标签: javascript reactjs

我在数组中有一个对象,如下所示:

bears: [
{
 Yogi: "123kg",
 Pooh: "110kg",
 Grizly: "112kg",
 BooBoo: "200kg",
 Polar: "100kg",
}
]

`

迭代此类对象以便在行中显示名称和值的最佳方法是什么,例如返回以下类型的内容:<p>${name} ${value}</p>

所以我会显示:

Yogi 123kg

维尼110公斤

Grizly 112kg

BooBoo 200kg

Polar 100kh

2 个答案:

答案 0 :(得分:4)

它是一个包含对象而不是对象的数组。无论如何只是得到数组的第一项。

这应该有效:

VLAN_clean = [v[0:v.find(' ')] for v in VLANList if v.find(' ') != -1]

答案 1 :(得分:0)

我认为JSON对象的结构本身是错误的。 它的结构应该是这样的:

var bears = [{
  name: "Yogi",
  weight: "123kg"
}, {
  name: "Pooh",
  weight: "110kg"
}, {
  name: "Grizly",
  weight: "112kg"
}, {
  name: "BooBoo",
  weight: "200kg"
}]

然后你可以继续使用render()方法中的for循环来迭代它。

render() {
    var bearElements = [];
    for (var bearIndex = 0; bearIndex < bears.length; bearIndex++) {
      bearElements.push(
        <p>{`${bears[bearElements].name}` `${bears[bearElements].weight}`}</p>
      )
    }

    return (
      <div>{bears}</div>
    );
  }