[JS] 베스트 앨범 수록 (object을 정렬하는 방법?!)

Mia:)·2021년 3월 20일
0
function solution(genres, plays) {
    var answer = [];
    genres = genres.map((genre,index)=>{
        return {
            genre,
            index,
            playCount:plays[index]
        }
    });
  let genrePlayCount =[];
  const genreMap ={};
  let max = 0;
  let maxGenre = ''; //가장 많이 들은 장르 이름 
  
  console.log(genres);
  //우선 어떤 장르가 제일 많이 들었는지 알아야 한다. 
  genres.map(genre => {
    genreMap[genre.genre] = genreMap[genre.genre] + genre.playCount || genre.playCount 
  })
  console.log(genreMap)
  for(let genre in genreMap){
    if(genreMap[genre] > max ){
      max = genreMap[genre];
      maxGenre = genre;
    }
  }
  // 가장 많이 들은 장르 
    return answer;
}
const genres = ["classic", "pop","classic","classic","pop"];
const plays = [500,600,150,800,250];

solution(genres, plays);

아래의 코드의 문제점은 하나의 가장 많이 들은 장르명만을 가져온다는 것. 기존에 문제를 풀었던 방법을 활용해서 사용하려고 했더니.. 이런 결과가... 다시 찾아보자~!!!

  for(let genre in genreMap){
    if(genreMap[genre] > max ){
      max = genreMap[genre];
      maxGenre = genre;
    }
  }

https://dudmy.net/javascript/2015/11/16/javascript-sort/

0개의 댓글