if 문이 이해되지 않습니다.
281
작성한 질문수 6
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...] 라는 순서로 정렬하게 돼요.
이걸 계속 반복하면서 결과적으로 정렬된 배열을 반환하게 되는 거죠.
강의 교안은 따로 없을까요?
0
207
1
배열관련 질문드립니다.
0
345
2
제발 도와주세요
-4
928
1
괄호 질문
0
423
1
new 를 안 붙이는 경우 (섹션19)
0
355
1
무한루프
1
1210
1
혹시 교재는 따로 없을까요?
0
685
0
선생님과 접점을 찾았어요.
0
456
0
new 생성자
0
262
0
sample파일에서 질문있습니다.
3
418
1
password == '111111'
0
510
1
배열
0
281
1
toUpperCase() 에 대해서 질문입니다.
0
251
0
강의를 들으면서 비쥬얼스튜디오 코드를 사용하여도 상관 없을까요?
0
623
2
\'와 변수를 같이 쓰면 안 되나요?
0
336
2
왜 에러가 났는지
0
352
1
첫번째 for문에서 i값 5가 5번 출력 되는 이유
0
502
3
name이 뭐죠
0
275
1
첫번째 예시문에서 값이 왜 5가 5번 반복되는지 궁금합니다.
0
700
3
grades 객체에 key값 show의 function을 지정하는 지점에서 오류가 발생합니다.
0
296
1
function오류
0
392
1
객체 출력차이(document.write, console.log)
0
313
0
자바스크립트에서 함수가 아닌 곳에서 정의된 변수
0
190
0
동일한 이름의 전역변수 선언이 가능한가요
1
742
1





