[javascript] 자바스크립트로 다중 조건으로 배열 정렬하기
배열을 정렬할 때 하나 이상의 조건을 기반으로 정렬해야 하는 경우가 있습니다. 자바스크립트에서는 Array.sort()
메서드를 사용하여 다중 조건으로 배열을 정렬할 수 있습니다.
아래는 다중 조건으로 배열을 정렬하는 방법을 보여주는 간단한 예제 코드입니다.
// 다중 조건으로 배열 정렬하기
const items = [
{ name: 'A', age: 20 },
{ name: 'B', age: 25 },
{ name: 'C', age: 20 },
];
items.sort((a, b) => {
if (a.age === b.age) {
return a.name.localeCompare(b.name);
}
return a.age - b.age;
});
console.log(items);
위 코드는 먼저 나이(age)를 기준으로 오름차순으로 정렬하고, 나이가 동일한 경우에는 이름(name)을 기준으로 오름차순으로 정렬합니다.
이 예제에서 Array.sort()
메서드는 비교 함수를 인자로 받습니다. 이 함수는 두 개의 요소를 매개변수로 받고, 양수, 음수 또는 0을 반환하여 정렬 순서를 결정합니다.
만약 다른 조건이나 복잡한 정렬이 필요하다면, 비교 함수를 수정하여 해당 조건을 반영할 수 있습니다.
위 예제 코드를 실행하면 다중 조건으로 배열이 정렬된 결과를 확인할 수 있습니다.
이렇게 다중 조건으로 배열을 정렬할 수 있으며, 비교 함수를 활용하여 다양한 정렬 조건을 적용할 수 있습니다.