[javascript] 자바스크립트로 오름차순으로 배열 정렬하기

배열을 오름차순으로 정렬하는 것은 자바스크립트에서 매우 흔한 작업입니다. 정렬 알고리즘을 직접 구현할 수도 있지만, 자바스크립트 내장 함수를 사용하여 간단하게 정렬할 수 있습니다.

배열 정렬하기

자바스크립트의 Array 객체는 sort 메서드를 통해 배열을 정렬할 수 있습니다. 이 메서드는 배열의 각 요소를 문자열로 변환한 다음, 유니코드 코드 포인트 순서에 따라 이 문자열들을 정렬합니다. 이는 기본적으로 문자열 기반의 정렬을 수행하므로, 숫자 배열을 정렬할 때는 올바른 순서로 정렬되지 않을 수 있습니다.

const numbers = [4, 2, 5, 1, 3];
numbers.sort((a, b) => a - b);
console.log(numbers); // 출력: [1, 2, 3, 4, 5]

위 예제에서는 sort 메서드에 비교 함수를 전달하여 숫자 배열을 올바르게 정렬합니다. 비교 함수는 두 인수를 받아서 비교한 다음, 그 결과에 따라 정렬 순서를 결정합니다.

객체 배열 정렬하기

객체를 요소로 갖는 배열을 정렬할 때는 비교 함수를 사용하여 원하는 속성을 기준으로 정렬할 수 있습니다.

const items = [
  { name: 'apple', value: 4 },
  { name: 'banana', value: 2 },
  { name: 'cherry', value: 3 }
];

items.sort((a, b) => a.value - b.value);
console.log(items); 
// 출력: [ { name: 'banana', value: 2 },
//        { name: 'cherry', value: 3 },
//        { name: 'apple', value: 4 } ]

결론

자바스크립트를 사용하여 배열을 오름차순으로 정렬하는 것은 간단합니다. sort 메서드와 비교 함수를 적절히 활용하면 숫자 배열이나 객체 배열 모두를 원하는 대로 정렬할 수 있습니다.

이러한 배열 정렬 기능을 사용하여 데이터를 쉽게 정리하고 효율적으로 처리할 수 있습니다.

더 자세한 정보는 MDN 웹 문서의 Array.prototype.sort()를 참조할 수 있습니다.