slice와 splice 차이점과 sort를 이용하여 배열의 오름차순 정렬하기

2021. 9. 19. 21:07JavaScript

 

 

 

slice는 이미 존재하는 배열을 똑같이 복제하기도 하고, 존재하는 배열에서 원하는 인덱스만큼 따로 추출해서 새로운 배열로 만들어준다

splice와 slice는 언뜻 비슷해 보이지만 이 둘의 가장 큰 차이점은 splice() 메서드는 기존에 존재하는 배열의 요소를 수정 및 삭제 추가를 하면 원본 배열 자체를 수정하게 되는 것이며 slice() 메서드는 수정 및 삭제를 해도 원본 배열이 아닌 복사본을 만들어서 새로운 배열 객체로 반환해준다.

 

그래서 위에서 기존 배열에서 순서를 바꾸지만 원본 배열 자체에 영향을 주고 싶지 않다면

array 다음에 slice로 복제본을 하나 생성 후, 이 복제본에 sort 메서드를 통해 새롭게 정렬해주면 된다

* a-b는 오름차순 / b-a는 내림차순

 

 

숫자는 위처럼 a-b로 정렬이 가능하고

문자의 경우, a [0]. charCodeAt()으로 문자열의 첫 글자를 보고 정렬을 할 수 있다. (띄어쓰기가 앞에 있으면 제일 첫 번째 순서가 된다)

만약 문자열의 앞 글자가 a로 모두 같을 경우엔 localeCompare을 사용하자 

반응형