이 함수는 어떻게 구현하나요?

딕셔너리 구조의 자료를 생성하고, key와 value를 바꿔서 딕셔너리에 저장하는 함수(flip)를 구현하고 그 함수를 불러서 실행하라.

원래의 데이터에서 value가 같은게 있을때의 처리를 위해 신규 딕셔너리는 value를 list로 저장하기.

예시)

flip({"잡채": "한식", "갈비탕": "한식", "초밥": "일식", "짜장면": "중식"})

{"한식": ["잡채", "갈비탕"], "일식": ["초밥"], "중식": ["짜장면"]}

    1개의 답변이 있어요!

    • javascript로 만들어보았습니다.

      function flip(data) {

      // 빈객체 선언

      const newData = {};

      // 받은 데이터를 배열로 변경

      const foodArr = Object.entries(data);

      // 배열을 돌면서 최초 객채의 값을 키로, 키를 값으로 저장

      for (const [key, value] of foodArr) {

      // 키를 값으로 저장할때 배열로 만들어 저장

      const valueArr = newData[value] === undefined ? [] : newData[value];

      valueArr.push(key);

      newData[value] = valueArr;

      }

      return newData;

      }

      console.log(flip({"잡채": "한식", "갈비탕": "한식", "초밥": "일식", "짜장면": "중식"}))