JavaScript/JavaScript,jQuery
[JavaScript] 배열 정렬(오름차순, 내림차순)
mingmongs
2025. 3. 24. 11:04
자바스크립트에서 배열을 정렬하는 sort() 함수에 대하여 알아보자.
1) sort()
문법:
arr.sort([compareFunction])
- compareFunction이 생략될 경우, 배열의 요소들은 모두 문자열 취급되며, 유니코드 값 순서대로 정렬된다.
🔶 compareFunction : 정렬 순서를 정의하는 함수
이 함수는 두 개의 배열 요소를 파라미터로 입력 받음.
- 함수가 두 개의 배열 요소(a, b)로 입력 받을 경우
a > b => return 1 // return value>0이므로 a는 b 뒤에 위치
a < b => return -1 // return value<0이므로 a는 b 앞에 위치
a = b => return 0 // a와 b의 순서 변함 없음
2) 문자 정렬
예시)
let arr = ["a", "f", "r", "d", "o", "b", "x"];
arr.sort();
console.log(arr);
결과)
> (7) ['a', 'b', 'd', 'f', 'o', 'r', 'x']
3) 숫자 정렬
예시 1)
let arr1 = [6, 7, 1, 4, 0, 9, 3];
arr1.sort();
console.log(arr1);
결과 1)
> (7) [0, 1, 3, 4, 6, 7, 9]
예시 2)
let arr2 = [14, 67, 8, 33, 5];
arr2.sort();
console.log(arr2);
결과 2)
> (5) [14, 33, 5, 67, 8]
4) 문자 내림차순 정렬
: 내림차순 정렬은 앞서 말한대로 함수를 정의해야한다.
내림차순은 비교연산자를 활용하여 정의하면 된다.
아래 예시를 살펴보자.
예시)
let arr = ["C", "F", "A", "T", "U", "H", "G"];
arr.sort(function compare(a, b) {
if (a > b) return -1;
if (a < b) return 1;
return 0;
});
console.log(arr);
결과)
> (7) ['U', 'T', 'H', 'G', 'F', 'C', 'A']
[reference]
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort
https://hianna.tistory.com/409
https://yooneeee.tistory.com/17