본문 바로가기
개발자의 삶/Web(html, script, css) 기초

리스트 정렬하기(feat. js)

by 나.R.D.(Rule Destoryer) 2024. 4. 24.

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 를 사용한 이유는 대소문자 구분을 무시하기 위해서 사용하였지만, 불필요하다면, 해당 함수를 제거하고 사용하면 된다.

반응형

댓글