从嵌套的 json 值对象中获取数组

Posted

技术标签:

【中文标题】从嵌套的 json 值对象中获取数组【英文标题】:Get array from nested json value objects 【发布时间】:2020-05-10 06:54:42 【问题描述】:

我一直在寻找答案,但没有找到。

我有一个类似的数组:

const data2 = [
    "abc":
            companyCity:"Cupertino",
            conpanyName:"Apple"
        
    ,
    
    "def":
            companyCity:"Mountain View",
            conpanyName:"Google"
        
    
]  

我想转换成数组,比如省略父键:

const data3 = [
    
        companyCity:"Cupertino",
        companyName:"Apple",
    ,
    
        companyCity:"Mountain View",
        companyName:"Google"
    
]

也许,像 lodash 这样的库有一种方法可以实现这一点,但没有找到。任何帮助将不胜感激:)

【问题讨论】:

您的问题中没有JSON,可能应该删除相应的标签。 【参考方案1】:

使用Array.flatMap()(或lodash的_.flatMap())迭代数组,并使用Object.values()(或_.values())获取每个项目的内部对象:

const data = ["abc":"companyCity":"Cupertino","conpanyName":"Apple","def":"companyCity":"Mountain View","conpanyName":"Google"]

const result = data.flatMap(Object.values)

console.log(result)

【讨论】:

以上是关于从嵌套的 json 值对象中获取数组的主要内容,如果未能解决你的问题,请参考以下文章

从flutter中的多个嵌套json数组中获取值

无法从python中的json数组获取嵌套对象

从Firebase响应嵌套JSON对象获取键/值对

java解析Json中获取Array字段值及嵌套Json对象

从嵌套属性数组中获取对象嵌套值

如何使用 c# 从 ajax 中的嵌套 JSON 对象中获取值