🕵️♀️배열이란?
여러개의 연관있는 데이터 값을 하나의 이름으로 묶어 사용할 수 있는 데이터 타입이다.
let number_arr = [1, 2, 3, 4, 5]
number_arr.splice(0, 1, 2) // [1]
number_arr.slice(3, 4) // [4]
number_arr.sort((a, b)=>a-b) // [1, 2, 3, 4, 5]
number_arr.sort((a, b)=>b-a) // [5, 4, 3, 2, 1]
splice(0, 1, 2)
는 (시작 index, 삭제 count, 추가 데이터)로 0번 인덱스부터 1개를 삭제하여 1만 삭제되고 그 자리에 추가 데이터인 2가 들어오게 된다.
✍ 반환 값은 삭제된 [1] 이며, 원본 배열이 [2, 2, 3, 4, 5]로 변경된다.
slice
불과 어제 포스팅한 메소드로 splice와 이름과 기능이 비슷해서 헷갈린다.slice(3, 4)
는 (시작 index, 마지막 index)로 3번 인덱스부터 4번 인덱스 "앞" 까지를 배열로 반환한다.
✍ 반환 값 [4] 이며, 원본 배열은 변경되지 않는다.
sort
는 알고리즘에서 자주 등장하는 메소드다.
오름차순 =sort((a,b) => a-b)
내림차순 =sort((a,b) => b-a)
오름차순으로 정렬된 배열을 reverse()로 뒤집는 방법도 있고, 아래 소스코드 처럼 sort 메소드의 매개변수에 함수를 사용하여 정렬하는 방법도 있다.arr.sort(function (a, b) { if (a < b) { // > 오름차순 return -1; } else if (a > b) { // < 오름차순 return 1; } else { return 0; } });
✍ 반환 값은 정렬된 배열이 반환된다.
덕분에
splice()
slice()
sort()
복습 잘 했습니다!!!😊원본 데이터가 수정되는 메소드들이 있어서 많이 헷갈리는데, 자꾸 사용해 봐야겠어요ㅎㅎ👍👍