เราจำเป็นต้องเขียนฟังก์ชัน 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' ] }