
sort 함수에 대해서
기본 값은 문자열로 변경 후에 UTF-16 코드 유닛 값을 기준으로 정렬
숫자 정렬에 적합하지 않다
[1, 60, 7, 21, 100000]을 정렬한 결과가[1, 100000, 21, 60, 7]
기본문법
arr.sort([compareFunction])에서[compareFunction]을 작성해 주면 된다
[compareFunction]은 sort 함수의 콜백함수로[a, b]인자가 자동으로 들어가고 이는 배열에서 비교되는 2개의 원소이다
[compareFunction]의 반환 값은3가지: 0보다 크다/작다/같다매개 변수로
[a, b]를 받았다고 가정하자
반환값 < 0: 그대로[a, b], a가 먼저 온다반환값 == 0: 그대로[a, b], a, b의 순서를 바꾸지 않는다반환값 > 0:[b, a], b가 먼저 온다 | 이 경우에만 변경이 일어남
const array = [2, 3, 1, 5, 4]
array.sort((a,b) => a-b);
console.log(array)
// 결과 [1, 2, 3, 4, 5]
const array = [2, 3, 1, 5, 4]
array.sort((a,b) => b-a);
console.log(array)
// 결과 [5, 4, 3, 2, 1]
python이 짱이다