배열의 요소들을 문자열로 변환하여 유니코드 순서에 따라 정렬한다.
숫자 배열이라도 문자열로 취급되어 예상치 못한 결과가 나올 수 있다.
예를 들어 [1,10,2] 를 정렬하면 ['1','10','2'] 가 되어 ['1','10','2'] 순으로 정렬된다.
배열의 요소들을 숫자로 비교하여 정리할 때는 array.sort((a,b) => a-b) 로 사용해야 a-b 의 결과에 따라 오름차순으로 정렬이 이루어진다.
즉, 숫자 배열을 정확하게 정렬하기 위해 사용하는 방법이다.
숫자 내림차순으로 정렬하려면 (a,b)=> b-a 와 같이 비교 함수를 변경하면된다.
array.sort((a,b) => b-a);
array.sort((a,b)=>a-b); 에서 (a, b) => a - b 부분을 비교 함수라고 한다.
비교 함수는 두 개의 요소 a와 b를 비교하여 다음과 같은 값을 반환한다.
자바스크립트에서 배열을 정렬할 때는 sort() 메서드를 사용하며, 정렬 방식은 비교 함수를 통해 결정된다. 문자열과 숫자열을 정렬방식이 다르다는 것을 알아보았다.