สมมติว่าเรามีวัตถุต่อไปนี้ของวัตถุที่มีการจัดอันดับของผู้เล่นชาวอินเดียบางคน เราจำเป็นต้องแปลงสิ่งนี้เป็นอาร์เรย์ของวัตถุโดยแต่ละวัตถุมีคุณสมบัติสองอย่างคือชื่อและอันดับที่ชื่อถือชื่อผู้เล่นและอันดับถือวัตถุจัดอันดับ -พี>
ต่อไปนี้เป็นวัตถุตัวอย่างของเรา -
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 } }
]