객체를 받아서 키가 값에 매핑되는 객체를 반환하는 함수 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' ] }