从数组到映射的数据转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从数组到映射的数据转换相关的知识,希望对你有一定的参考价值。

我正在创建具有其属性(名称,型号,成本)的汽车列表,并将其转换为一种格式,以便对于给定的汽车名称而言,快速检索其型号和成本值

const cars =  [name: 'Maruthi Dzire', model: '2017', cost:500000, name: 'Ford', model: '2019', cost:100000
];


const getCarDetails = (cars,name) => 

    var carDetails=;

        carDetails = cars
        .filter(item=>item.name===name)
        .map(item => item);     

    return carDetails;
;

console.log(getCarDetails(cars,'Ford'));

[输出:名称:“ Ford”,型号:“ 2019”,成本:100000

我正在寻找不同的结果

预期输出:model:“ 2019”,成本:100000

请咨询。

答案

您可以更改地图以仅返回您需要的键

.map(item => ( model: item.model, cost: item.cost ))
另一答案

如果您在阵列中拥有名称为ford的单车那么您可以使用JS函数,例如find,findIndex或filter

最好是去探索它:

let fordCar =  cars.find(car => car.name === 'Ford')
delete fordCar.name;

它将得到:cost: 100000, model: "2019"

如果具有multiple carsname Ford,则可以执行此操作:

let exceptFordCArs = cars.filter(car => car.name === 'Ford').map(car => delete car.name && car)

它将得到:["model":"2019","cost":100000,"model":"2020","cost":110000]

以上是关于从数组到映射的数据转换的主要内容,如果未能解决你的问题,请参考以下文章