反应本机过滤器数组返回未定义

时间:2019-05-24 00:18:44

标签: javascript arrays react-native

我正在尝试访问数组对象和setstate上的密钥对值,但是它返回未定义的

当我console.log(obj)时,我看到了这些值,但是当我尝试访问它们时,它们却未定义

const data =[
  [
      {
        "name": "chris",
        "city": "unknown",
        "code": "404",
        "zip": "345"
      },{
        "name": "kulo mike",
        "city": "america",
        "code": "210",
        "zip": "43"
      },  {
        "name": "chris smith",
        "city": "unknown",
        "code": "918",
        "zip": "89"
      },

  ]
]

我尝试过

const person = data.filter(
  item =>{
    item.name == 'chris'
    console.log(item.name)
  })

还有这个

const person = data.filter(
  item => item.name === 'kulo mike'
  )[0].zip

设置状态

this.state={
    user: person
    }

1 个答案:

答案 0 :(得分:1)

数组内的数组,尝试将数据转换为:

const data =[
      {
        "name": "chris",
        "city": "unknown",
        "code": "404",
        "zip": "345"
      },{
        "name": "kulo mike",
        "city": "america",
        "code": "210",
        "zip": "43"
      },  {
        "name": "chris smith",
        "city": "unknown",
        "code": "918",
        "zip": "89"
      },

]


const user = data.filter(item => item.name === 'kulo mike')[0] 

setState({user})