array.sort() => 배열의 오름차순
예시1) const array = [ "e", "b", "c", "a" ]
-> array.sort() = ["a", "b", "c", "e"]
예시2) const array = [ 6, 3, 1 , 9]
-> array.sort() = [1,3,6,9]
만약에 const array = [1, 23 , 9 , 57] 이라면?
오름차순이니까 array.sort() = [1, 9 , 23, 57]이 오는게 맞겠지?
NO
유니코드 순서로 인해 [1, 23, 57, 9] 순서로 나오게 됨
그러면 어떻게해야할까??
compareFunction
을 사용
compareFunction
: 정렬 순서를 정의하는 함수. 생략하면 배열은 문자의 유니코드 값에 따라 정렬compareFunction(a,b)이 0보다 작은 경우 : a < b로 인식
compareFunction(a,b)이 0보다 클 경우: a > b로 인식
compareFunction(a,b)가 0일 경우 : 다른 요소에 대해 정렬
사용예시
-> [1, 9, 10, 23, 57]
★더 단순화 (a와 b의 차이가 양수냐 음수냐를 이용하여 오름차순/내림차순 정렬 가능)
-> [1, 9, 10, 23, 57]