开发者问题收集

访问位于另一个对象内的数组内的对象

2018-12-04
46

我有一个对象数组,每个对象里面都有另一个数组。我需要访问该数组内的对象。我该怎么做?

例如,这是我的函数,我将每个数组都登录到控制台。我想改为控制台记录每个描述。

  const var = data.filter((u) => { 
       console.log(u.array)
    })

这是 JSON 数据

[
  {
    "agreed": true,
    "email": "[email protected]"
    "array": [
      {
        "name": "Alex",
        "city": "Pedro",
        "state": "WA",
        "description": "Alex was very patient. He is one of the good guys!"
      }
    ]
  }
]
3个回答

以下是代码片段。data 包含原始数组,然后 u 包含外部数组的每个对象。然后 u.array.map 遍历每个单独的数组,i.description 包含每个子数组的描述。

data.map((u) => {
    u.array.map((i) => {
        console.log(i.description);
    }
})
Ammar Hussain
2018-12-04

如果您知道确切的索引,您可以这样做。

const var = data.filter((u) => { 
       console.log(u.array[0].description)
    })

如果您不知道确切的索引,或者您想对数组中的每个项目执行此操作,您可以这样做。

const var = data.filter((u) => { 
  u.array.forEach(item => {
    console.log(item.description)
  })
})
Chaim Friedman
2018-12-04

好吧,

如果这是你的 Javascript 对象的结构

var data =    
[
  {
    "agreed": true,
    "email": "[email protected]"
    "array": [
      {
        "name": "Alex",
        "city": "Pedro",
        "state": "WA",
        "description": "Alex was very patient. He is one of the good guys!"
      }
    ]
  }
]

那么你可以通过以下方式访问该数组,

data[0].array[0].name;

并且如果你使用 jquery,你可以像这样使用 console.log 进行描述

$.each(data[0].array, function(i,v){
   console.log(v.description);
})
zetawars
2018-12-04