Lodash:使用现有值从现有数组生成新数组

问题描述 投票:-2回答:1

我有一个数组如下

[{
        "first_name": "Anna",
        "last_name": "William",
        "class": "math",
        "year": "1990"
    },
    {
        "first_name": "Tom",
        "last_name": "Cruise",
        "class": "biology",
        "year": "1991"
    }
]

我正在尝试将其转换为新数组

[{
        "name": "Anna William",
        "class": "math"
    },
    {
        "name": "Tom Cruise",
        "class": "biology"
    }
]

我的简单解决方案显然是使用循环创建一个新数组,但它很长而且不优雅:P。 Lodash帮助我做了很多代码简短,可读性强的代码。任何使用Lodash功能转换阵列的建议,请与我分享。

javascript arrays lodash
1个回答
0
投票

您只能使用.map将新数组映射到所需的值

let arr = [{"first_name": "Anna","last_name": "William","class": "math","year": "1990"},{"first_name": "Tom","last_name": "Cruise","class": "biology","year": "1991"}]

let op = arr.map(e => ({name: `${e.first_name} ${ e.last_name}`, class:e.class }))

console.log(op)
© www.soinside.com 2019 - 2024. All rights reserved.