본문 바로가기

개발에 도움이 되는/JavaScript 문법

JavaScript : sort()

 

배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환 (복사본이 만들어지는 것이 아닌 원 배열에 정렬)

Default는 각 문자의 유니 코드 코드포인트 값에 따라 정렬 (그래서 숫자를 정렬하려고 단순히 sort()를 썼다간 원치 않은 결과가 나온다)

 

 

- 구문

 arr.sort([compareFunction])

 

매개변수에 정렬 순서를 정의하는 함수를 넣을 수 있고 이 함수를 통해 숫자 오름차순 or 내림차순 정렬을 할 수 있다.

compareFunction의 return 값이 음수면 a를 더 낮은 index로 정렬하고, 양수면 b를 a보다 낮은 index로 정렬, 0이면 서로에 대해 변경하지 않는다.

 

 

위 코드는 오름차순 정렬을 한 것이고, 짧게 쓰려면 화살표 함수로 numbers.sort((a, b)=> { return a - b });

더 짧게 쓰려면 numbers.sort((a, b) => a - b);

반대로 내림차순 정렬을 한다면 a - b를 b - a로 바꿔주면 된다.

반응형