เราต้องเขียนฟังก์ชัน reverseObject() รับอ็อบเจกต์ คืนอ็อบเจกต์ที่ key ถูกแมปเป็น value
เราจะวนลูป Object.keys() และ push key-value pair เป็น value-key pair ในอ็อบเจกต์ใหม่
ตัวอย่าง
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' ]
}