将 JavaScript map 值映射到键(反向对象映射)


我们需要编写一个 reverseObject() 函数,它接受一个对象并返回一个将键映射到值的对象。

我们通过迭代 Object.keys()并在新对象中将键值对作为值键对推送来实现这一点。

以下是执行此操作的代码 -

示例

const cities = {
   'Jodhpur': 'Rajasthan','Alwar': 'Rajasthan','Mumbai': 'Maharasthra','Ahemdabad':    'Gujrat','Pune': 'Maharasthra'
};
const reverseObject = (obj) => {
   const newObj = {};
   Object.keys(obj).forEach(key => {
      if(newObj[obj[key]]){
         newObj[obj[key]].push(key);
      }else{
         newObj[obj[key]] = [key];
      }
   });
   return newObj;
};
console.log(reverseObject(cities));

输出

以上代码在控制台中的输出将是 -

{
   Rajasthan: [ 'Jodhpur', 'Alwar' ],
   Maharasthra: [ 'Mumbai', 'Pune' ],
   Gujrat: [ 'Ahemdabad' ]
}

更新日期: 19-Aug-2020

957 查看

开启您的 职业 生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.