在JavaScript中将对象的对象转换为数组

假设我们有以下对象对象,其中包含一些印度球员的等级,我们需要将其转换为对象数组,每个对象具有两个属性,即name和rating,其中name持有玩家的名字,而rating持有评价对象-

以下是我们的示例对象-

const playerRating = {
   'V Kohli':{
      batting: 99,
      fielding: 99
   },
   'R Sharma':{
      batting: 98,
      fielding: 95
   },
   'S Dhawan':{
      batting: 92,
      fielding: 90
   }
}

解决方案非常简单明了,我们将使用Object.keys()方法遍历对象,同时将其转换为这样的数组。

以下是带有输出的完整代码

示例

const playerRating = {
   'V Kohli':{
         batting: 99,
      fielding: 99
   },
   'R Sharma':{
      batting: 98,
      fielding: 95
   },
   'S Dhawan':{
      batting: 92,
      fielding: 90
   }
}
const objArray = [];
Object.keys(playerRating).forEach(key => objArray.push({
   name: key,
   rating: playerRating[key]
}));
console.log(objArray);

输出结果

[
   { name: 'V Kohli', rating: { batting: 99, fielding: 99 } },
   { name: 'R Sharma', rating: { batting: 98, fielding: 95 } },
   { name: 'S Dhawan', rating: { batting: 92, fielding: 90 } }
]