티스토리 뷰

728x90

JavaScript에서 배열을 정렬하는 방법은 Array.prototype.sort() 함수를 사용한다.

해당 함수는 배열의 요소를 정렬할 때, 기본적으로 요소를 문자열로 변환하고 유니코드 코드 포인트 순서로 정렬한다.


보편적인 예제
// test list
const list = [
  {
    data: '가',
    seq: 2
  }, {
    data: '나',
    seq: 1
  }
];

// 오름차순 정렬
list.sort((a, b) => a.seq - b.seq);
// 결과: [{data: '나', seq: 1}, {data: '가',seq: 2}]

// 내림차순 정렬
list.sort((a, b) => b.seq - a.seq);
// 결과: [{data: '가', seq: 2}, {data: '나',seq: 1}]

위 예제처럼 대부분 이러한 형식으로 정렬을 사용할 것이라 생각된다.


단순 숫자나 문자를 정렬하는 경우, 다음과 같다.


숫자, 문자 정렬 예제
// 숫자 list
const nList = [4, 2, 5, 1, 3];

// 오름차순 정렬
nList.sort((a, b) => a - b);
// 결과: [1, 2, 3, 4, 5]

// 문자 list
const strList = ['Apple', 'banana', 'Orange', 'apple'];

// 오름차순 정렬
strList.sort((a, b) => a.toLowerCase().localeCompare(b.toLowerCase()));
// 결과: ['Apple', 'apple', 'banana', 'Orange']

lower case 를 사용한 이유는 대소문자 구분을 무시하기 위해서 사용하였지만, 불필요하다면, 해당 함수를 제거하고 사용하면 된다.

반응형
반응형
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday