티스토리 뷰

반응형

Array.sort()

sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후, 그 배열을 반환한다.
기본 정렬 순서는 문자열의 유니코드 코드 포인트를 따른다.

 

기본 설명

arr.sort([compareFunction])

 

매개변수

compareFunction(Optional) : 정렬 순서를 정의하는 함수. 생략하면 문자열의 유니코드 값에 따라 정렬.

  • compareFunction(a, b) < 0 : a를 b보다 낮은 인덱스로 정렬. (a가 먼저 나옴)
  • compareFunction(a, b) = 0 : a와 b를 서로에 대해 변경하지 않고 모든 다른 요소에 대해 정렬
  • compareFunction(a, b) > 0 : b를 a보다 낮은 인덱스로 정렬. (b가 먼저 나옴)

반환 값

정렬한 배열. 원 배열이 정렬됨. (사본이 만들어지는 것이 아님!!)

 

사용법

문자 정렬

const months = ['March', 'Jan', 'Feb', 'Dec'];

months.sort();
console.log(months);
// expected output: Array ["Dec", "Feb", "Jan", "March"]

 

숫자 정렬

const array1 = [1, 30, 4, 21, 100000];

// 기본 정렬
array1.sort();
console.log(array1);
// expected output: Array [1, 100000, 21, 30, 4]
// -> 문자열로 취급해 정렬하기 때문에 원하는 결과가 나오지 않음

// 오름차순 정렬
array1.sort(function(a, b) {
  return a - b;
});
console.log(array1);
// expected output: Array [1, 4, 21, 30, 100000]

// 내림차순 정렬
array1.sort(function(a, b) {
  return b - a;
});
console.log(array1);
// expected output: Array [100000, 30, 21, 4, 1]

 

참고 사이트

Javascript | MDN - Array.prototype.sort()

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함