
sortsort method를 활용하면 배열을 정리할 수 있다.
sort method에 아무런 argument도 전달하지 않으면, 아래와 같이, 기본적으로 유니코드에 정의된 문자열 순서에 따라 정렬된다.
const letters = ['D', 'C', 'E', 'B', 'A'];
const numbers = [1, 10, 4, 21, 36000];
letters.sort();
numbers.sort();
console.log(letters); // (5) ["A", "B", "C", "D", "E"]
console.log(numbers); // (5) [1, 10, 21, 36000, 4]
sort method에 다음과 같이 콜백 함수를 argument로 작성해주면, 원하는 대로 오름차순 또는 내림차순으로 정렬이 가능하다.
const numbers = [1, 10, 4, 21, 36000];
// 오름차순 정렬
numbers.sort((a, b) => a - b);
console.log(numbers); // (5) [1, 4, 10, 21, 36000]
// 내림차순 정렬
numbers.sort((a, b) => b - a);
console.log(numbers); // (5) [36000, 21, 10, 4, 1]
주의해야 할 부분은, method를 실행하는 원본 배열의 요소들을 정렬한다는 것이다.
때문에, 한 번 정렬하고 나면 정렬하기 전의 순서로 되돌릴 수 없기 때문에, 필요할 경우 미리 다른 변수에 복사해두는 것이 좋다.
reversereverse method는 말 그대로 배열의 순서를 뒤집어 주는 method이다.
별도의 파라미터가 필요하지 않기 때문에, method 호출만 해주면 배열의 순서를 뒤집을 수 있다.
다만, sort method와 마찬가지로, 원본 배열의 요소들을 뒤집기 때문에, 사용 시 주의가 필요하다.
const letters = ['a', 'c', 'b'];
const numbers = [421, 721, 353];
letters.reverse();
numbers.reverse();
console.log(letters); // (3) ["b", "c", "a"]
console.log(numbers); // (3) [353, 721, 421]