【问题标题】:make a new array from a nested object using Lodash使用 Lodash 从嵌套对象创建一个新数组
【发布时间】:2015-07-01 14:13:59
【问题描述】:

这是我的数据

[
    {
        "properties": {
            "key": {
                "data": "companya data",
                "company": "Company A"
            }
        },
        "uniqueId" : 1
    },
    {
        "properties": {
            "key": {
                "data": "companyb data",
                "company": "Company B"
            }
        },
        "uniqueId" : 2
    },
    {
        "properties": {
            "key": {
                "data": "companyc data",
                "company": "Company C"
            }
        },
        "uniqueId" : 3
    }
]

我的 typeahead 指令所需的格式如下。我试图弄清楚我所做的另一篇文章,但仍然无法使其工作。最好的办法是将嵌套集合作为一个简单的对象集合。

[
    {
        "uniqueId" : 1,
        "data": "companya data"
    },
    {
        "uniqueId" : 2,
        "data": "companyb data"
    },
    {
        "uniqueId" : 3,
        "data": "companyc data"
    }
]

【问题讨论】:

    标签: lodash


    【解决方案1】:

    我明白了!

    console.log(
        _(jsonData).map(function(obj) {
            return {
                d : obj.properties.key.data,
                id : obj.uniqueId
            }
        }) 
        .value()  
    );
    

    【讨论】:

      【解决方案2】:

      您不必使用 lodash 的链接功能,只要您只执行一项操作即可。您可以简单地使用:

      _.map(jsonData, function(obj) {
          return {
              d : obj.properties.key.data,
              id : obj.uniqueId
          }
      });
      

      【讨论】:

        猜你喜欢
        • 2020-12-21
        • 2021-06-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-03
        • 2022-11-25
        • 1970-01-01
        相关资源
        最近更新 更多