假设我们有以下对象对象,其中包含一些印度球员的等级,我们需要将其转换为对象数组,每个对象具有两个属性,即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 } } ]