【问题标题】:How can I parse json array from json object?如何从 json 对象解析 json 数组?
【发布时间】:2017-06-24 07:32:20
【问题描述】:

我有一个从 reactjs 中的 get 请求返回的 json 对象。我想从中获取关键和价值项目。

{"return":"Success",

"Items": [

{"Name":"centracore", "Type":"rollover" ,  "Os":"Windows",  "Level":"1", "Language_Used":"Assembly", "Size":"4mb"},

{"Name":"centracore", "Type":"Atype" ,   "Os":"Linux"  ,  "Level":"3", "Language_Used":"C++"     , "Size":"4mb"},

{"Name":"centracore", "Type":"random" ,  "Os":"OSX"    ,  "Level":"2", "Language_Used":"C"       , "Size":"4mb"}

]}

我注意到我可以使用下面的代码手动访问这些值。

请记住,this.state.stuff 保存着我的 json 对象。我的格式 json 格式不适合我想要做的事情吗?

if(this.state.authenticated ){
            {this.GetPage.bind(this)}
            let x = this.state.stuff; Object.entries(this.state.stuff).map((type,item) => {

            console.log(type[1][0])
            console.log(type[1][1])
            console.log(type[1][2])
          })

【问题讨论】:

  • 你的问题不清楚,你还没有解释你要做什么。
  • 我编辑了这个。抱歉,我不认为这是一个太糟糕的问题。
  • 我也没想到会因此受到如此惩罚。

标签: arrays json reactjs iterated-function


【解决方案1】:

据我了解,您希望能够在 Object Items 数组中获取键和值,因此您需要映射 items 数组,然后使用 Object.entries() 从获取的项目中映射 key, values

你可以这样做

 if(this.state.authenticated ){
        {this.GetPage.bind(this)}
        this.state.stuff.Items.map((item, index) => {
             Object.entries(item).forEach([key, value], () => {
                    console.log(key, value)
             })

      })

工作示例

var obj = {"return":"Success",

"Items": [

{"Name":"centracore", "Type":"rollover" ,  "Os":"Windows",  "Level":"1", "Language_Used":"Assembly", "Size":"4mb"},

{"Name":"centracore", "Type":"Atype" ,   "Os":"Linux"  ,  "Level":"3", "Language_Used":"C++"     , "Size":"4mb"},

{"Name":"centracore", "Type":"random" ,  "Os":"OSX"    ,  "Level":"2", "Language_Used":"C"       , "Size":"4mb"}

]}
obj.Items.map((item, index) => {
       console.log( item);
       Object.entries(item).forEach(([key, value]) => {
              console.log(key, value)
       })

})

JSFIDDLE

【讨论】:

  • 正是我需要的。谢谢。
  • 谢谢 之前没看到 :)
猜你喜欢
  • 2019-12-01
  • 2019-01-14
  • 1970-01-01
  • 2020-12-12
  • 1970-01-01
  • 2015-06-02
  • 1970-01-01
  • 2021-07-13
  • 1970-01-01
相关资源
最近更新 更多