首页 > 解决方案 > 在javascript中的数组内映射对象?

问题描述

这是我的数组:

const array = [
    {
        "fare": "399.00",
        "passenger": {
            "age": "21",
            "gender": "MALE",
            "name": "Test1"
        },
    },
    {
        "fare": "399.00",
        "passenger": {
            "age": "21",
            "gender": "FEMALE",
            "name": "Test2"
        },
    }
]

如何映射数组内部的对象,以及如何将对象转换为所需的输出

所需输出:

Test1(M), Test2(F)

上面包含“名字”和性别 - 如果它是男性,那么只有“M”,如果它的女性只是“F”

截至目前,我尝试过,

array.map(o => ({ name: o.passenger.name, gender: o.passenger.gender })))

但是如何将其转换为预期的输出!

标签: javascriptarraysobject

解决方案


像这样

const array = [{ "fare": "399.00", "passenger": { "age": "21", "gender": "MALE", "name": "Test1" }, }, { "fare": "399.00", "passenger": { "age": "21", "gender": "FEMALE", "name": "Test2" }, } ];

const output = array
  .map(({passenger}) => `${passenger.name}(${passenger.gender.slice(0,1)})`)
  .join(", ")

console.log(output); 


推荐阅读