자바스크립트에서는 배열의 일부를 삭제하거나, 삽입, 추출이 자바에 비해서는 자유로운데, 어떤지 살펴보고자 한다.
[배열의 삭제]
let arr =[10, 20, 30, 40];
delete arr[1]; // (1) [10, 20, 40]
arr.splice(1,1); // (2) [10, 20, 40]
arr.splice(1, 2, 100, 200); // (3) [10,100, 200, 40]
(1) delete 배열명[m] : 해당 배열의 m번째 요소를 삭제
(2) 배열명.splice(m 시작 위치, n 삭제 개수) : 해당 배열의 m번째(시작 위치)부터 n개만큼 삭제
(3) 배열명.splice(m 시작 위치, n 삭제 개수, n1, n2 ,,,)
: 해당 배열의 m번째(시작 위치)부터 n개만큼 삭제 후 해당 수만큼 n1, n2 ,,, 의 수로 대체
: 위를 이용해 배열의 삽입도 가능
* 위의 실행 결과는 연속적으로 실행했을 때 결과가 아닌 arr을 기준으로 실행했을 때 결과
[배열의 삽입]
let arr =[10, 20, 30, 40];
arr.splice(2, 0, 300, 400); // (1) [10, 20, 300, 400, 30, 40]
(1) 배열의 삭제 및 대체(위의 3번)을 이용하는데, 삭제 없이 대체만 할 경우 삽입이 가능
배열명.splice(m 시작위치, n 삭제 개수, n1, n2, ,,,) : 해당 배열의 시작 위치부터 n개만큼 삭제하고 해당 위치에 n1, n2 ,,,를 삽입
[배열의 일부 추출]
let narr=[10,20,30,40,50,60,70,80];
let subarr = narr.slice(2, 5); // (1) [30, 40, 50]
(1) 배열명.slice(m 시작 위치, n 종료 위치) : 해당 배열의 m번째 부터 n번 이전까지의 요소 추출
[배열의 연결]
let arr2=[1,2];
let totarr = arr2.concat(3,4); // [1,2,3,4]
let arr3=[10, 20];
let totarr2 = arr2.concat(arr3); // [1,2,10,20];
let totarr4=arr2.concat(3,4, [5,6],arr3); // [1,2,3,4,5,6,10,20]
(1) 배열명.concat(a,b,c, ... || 배열) : 배열의 맨 뒤에 요소를 추가하거나 배열을 연결
'공부 자료 > 자바스크립트[JS]' 카테고리의 다른 글
[JavaScript] JS의 라이브러리 AJAX (0) | 2023.11.14 |
---|---|
[Springframework] Redirect 시 데이터 전달 (0) | 2023.11.12 |
[JS] 타이머 / setTimeout(), setInterval() (0) | 2023.10.27 |
[JS] 전개 연산자 (0) | 2023.10.26 |