인프런 커뮤니티 질문&답변

이민주님의 프로필 이미지
이민주

작성한 질문수

생활코딩 - 자바스크립트(JavaScript) 기본

값으로서의 함수와 콜백 - 콜백이란?

if 문이 이해되지 않습니다.

작성

·

206

0

var numbers = [20, 10, 9,8,7,6,5,4,3,2,1];
var sortfunc = function(a, b) {
    console.log(a, b);
    if(a > b) {
        return 1;
    } else if (a < b) {
        return -1;
    } else {
        return 0;
    }
}

numbers.sort(sortFunc);

위 코드를 작성해주면 왜 정렬된 배열이 출력되는지 이해가 가지 않네요. if 문이 이해가 되지 않습니다.

답변 1

1

a를 기준으로 두 수의 크기를 비교해서 a가 크면 양수를 반환하고 a가 더 작으면 음수를 반환합니다.

예를 들면 a, b에 2, 3이 온 경우에 음수가 반환되면 "아~ a가 더 작구나" 하면서 [... a, b...] 라는 순서로 정렬하게 돼요.

이걸 계속 반복하면서 결과적으로 정렬된 배열을 반환하게 되는 거죠.

이민주님의 프로필 이미지
이민주

작성한 질문수

질문하기