function solution(arr, divisor) {
let answer = [];
for (let i = 0 ; i < arr.length ; i ++) {
if ( arr[i] % divisor == 0) {
answer.push(Number(arr[i]));
}
}
if (answer.length === 0) {
return answer = [-1]
}
return answer.sort((a,b) => a - b);
}
return answer.sort((a,b) => a - b);
처음 answer.sort(); 를 리턴했더니 오름차순 정렬이 잘 되지 않았다 예를 들어 5,10 이 있으면 이 순서대로 정렬이 되어야 하는데 10,5로 리턴되어 무슨일인가 했더니 sort() 함수는 디폴트로 문자열 로 인식해 정렬한다고 한다.
그래서 sort((a,b) => a - b) 이렇게 코드를 짜 숫자 정렬로 맞춰줘야 한다.
반대로 내림차순의 경우 sort((a,b) => b - a)이렇게 a,b의 위치만 바꿔주면 끝!
잘 읽었습니다. 좋은 정보 감사드립니다.