Array.prototype.reverse()
사용법
reverse()
함수는
배열의 요소 순서를 역순(reverse)으로 정렬하는 함수입니다.
즉, 첫 번째 요소는 마지막 요소가 되고 마지막 요소는 첫 번째 요소가 됩니다.
reverse()
함수는 원본 배열을 직접 수정하며, 새로운 배열을 반환하지 않습니다.
reverse()
함수의 형식은 다음과 같습니다.
구문
arr
: reverse()
함수를 적용할 원본 배열입니다.
매개변수
없습니다.
반환 값
원본 배열의 요소 순서를 역순으로 변경하고, 그 결과로 해당 배열을 반환합니다.
반환 값은 변경된 원본 배열 자체입니다. 새로운 배열을 반환하지 않습니다.
주의할 점
주의할 점은 reverse()
함수가 기존 원본 배열을 직접 수정한다는 것입니다. 즉, reverse()
함수를 호출하면 호출한 원본 배열 자체가 역순으로 변경되며, 새로운 배열이나 복사본이 생성되지 않습니다. 따라서 이 함수를 사용하는 경우 원본 배열이 변경되는 것을 고려해야 합니다. 만약 원본 배열을 변경하고 동시에 원본 배열을 유지하고 싶다면, 복사본을 만들어서 reverse()
를 적용하거나 toReversed()
함수를 사용하세요.
복사본을 만들어서 reverse()
를 적용하기 - 1
복사본을 만들어서 reverse()
를 적용하기 - 2
toReversed()
함수 사용하기
toReversed()
함수는 reverse()
함수와 모든 기능이 동일하지만 원본 배열을 변경하지 않습니다.
toReversed()
함수는 reverse()
함수의 단점을 보완하기 위해 ECMAScript 2023에서 처음으로 도입되었습니다. 이전에는 reverse()
함수만 사용하여 배열의 요소 순서를 역순으로 정렬할 수 있었습니다.
reverse()
함수는 원본 배열을 변경하기 때문에 원본 배열의 요소를 유지해야 하는 경우 사용할 수 없습니다. toReversed()
함수는 새 배열을 생성하여 요소를 변경하기 때문에 이러한 문제를 해결할 수 있습니다.
주의하세요!
toReversed()
함수는 2023년도에 도입된 것으로 사용 시 브라우저 호환성을 확인해야 합니다.
메서드 |
데스크탑 Chrome
|
데스크탑데스크탑 Edge
|
데스크탑 Firefox
|
Safari
|
---|---|---|---|---|
toReversed()
|
110 | 110 | 115 | 16 |
다양한 예시
reverse()
함수는 여러 상황에서 다양하게 활용될 수 있습니다. 몇 가지 예시를 살펴보겠습니다.
순서 반전 후 반복
문자열을 뒤집기
역순으로 필터링
브라우저 호환성
메서드 |
데스크탑 Chrome
|
데스크탑데스크탑 Edge
|
데스크탑 Firefox
|
Safari
|
---|---|---|---|---|
reverse()
|
1 | 12 | 1 | 1 |
명세서
명세서 사양 | |
---|---|
reverse()
|
ECMAScript Language Specification #sec-array.prototype.reverse |