강의로 돌아가기
hykim

[실패]런타임 에러는 뭔가요?

구체적으로 어떤 에러인가요?
반은 맞고 반은 저렇게 뜨네요

작성중인 코드―solution.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function solution(genres, plays) {
    var answer = [];
    let obj = {
        max : []
    };
    for(let i in genres){
        if(obj[genres[i]]){
            for(let j in obj.max){
                if(obj.max[j].genres==genres[i]){
                    obj.max[j].p += plays[i];
                }
            }
            obj[genres[i]].push({id:i,p:plays[i]})
        }else{
            obj[genres[i]]=[];
            obj.max.push({genres:genres[i],p:plays[i]});
            obj[genres[i]].push({id:i,p:plays[i]})
        }
    }
    let tmpArr = [0];

    Object.keys(obj).forEach((key)=>{
        obj[key].sort((a,b)=>{
            return a.p > b.p ? -1 : a.p < b.p ? 1 : 0;
        })
    })

    for(let i in obj.max){
        let g = obj.max[i].genres;
        for(let j=0; j<2; j++){
            answer.push(parseInt(obj[g][j].id));
        }
    }

    return answer;
}
2 개의 답변
Demi

안녕하세요. 런타임에러는 말그대로 실행 중 에러가 발생했다는 뜻입니다.
인덱스를잘못 접근했다던가, 해시에 없는 원소를 접근하신 것 같습니다.

Kim Min-jun

베스트 2개를 찾는데 플레이수가 1개만 있는 장르가 있어서 그런거 아닐까요

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.