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

javascriptweb developmentobject oriented programming更新于 2025/9/26 5:32:17

我们需要编写一个函数 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' ]
}

相关文章


有用资源