[JS]08(3)_배열 중간에 값 추가, 삭제하기

2u·2023년 3월 10일

JavaScript

목록 보기
10/43
post-thumbnail

1. 배열 중간에 값 추가, 삭제하기

1) splice()

: 배열의 중간에 원소를 추가, 삭제할 수 있다.

  • 형식: array.splice(start[,deleteCount[,item1[,item2[,...]]]])

description

  • splice() 함수는 start, deleteCount, items원소 목록을 파라미터로 입력 받는다.
  • splice() 함수는 start index부터 deleteCount만큼의 원소를 삭제하고, 뒤 이어 오는 items를 start index 위에 추가한다.

파라미터

  • satrt: 변경을 시작할 배열의 시작 index
  • deleteCount: start index부터 deleteCount 갯수만큼 원소를 삭제된다.
  • items: 배열의 start index에 item들을 추가한다.

리턴값

  • 삭제된 원소(element)의 배열을 리턴한다.

2. 예제1) 배열의 앞, 중간, 뒤에 값 추가하기

// 앞에 추가
const arr1 = [1,2,3];
arr1.splice(0, 0,'a','b');
document.write(arr1);
//-> a,b,2,3
// 0번째 인덱스부터 0개의 원소를 삭제하고
// 0번째 부터 a, b를 추가해라

// 뒤에 추가
const arr2 = [1, 2, 3];
arr2.splice(arr2.length, 0, '4', '5');
document.write(arr2);
//->1,2,3,4,5

//중간에 추가
cosnt arr3 = [1,2,3];
arr3.splice(1, 0, 'a', 'b');
document.write(arr3);
//-> 1,a,b,2,3

3. 예제2) 배열 앞, 중간, 뒤에 값 삭제하기

//앞에 2개 원소 삭제
const arr1 = ['a', 'b', 1, 2, 3];
arr1.splice(0, 2);
document.write(arr1);
//-> 1,2,3

//중간(index 1) 2개 원소 삭제
const arr2 = [1, 'a', 'b', 2, 3];
arr2.splice(1, 2);
document.write(arr2);
//-> 1,2,3

//마지막 원소 삭제
const arr3 = [1, 2, 3, 'a'];
arr3.splice(arr3.length -1, 1);
document.write(arr3);
//-> 1,2,3

4. 예제3) 전체 또는 특정 인덱스 이후의 모든 원소 삭제

//전체 원소 삭제
const arr = [1, 2, 3];
arr1.splice(0);
document.write(arr1); //[]

//index 1이후의 모든 원소 삭제
const arr2 = [1, 2, 3];
arr2,splice(1);
document.write(arr2); //[1]

arr1.splice(0);

: 배열 전체의 원소를 삭제하고 싶으면 첫번째 파라미터(start index)를 0으로 지정하고, 나머지 파라미터는 입력하지 않는다.

arr2.aplice(1);

: 특정 index 이후의 원소를 삭제하고 싶으면 첫번째 파라미터(start index)를 삭제할 특정 index를 지정하고, 나머지 파라미터를 입력하지 않는다.

5. 예제4) 삭제와 동시에 추가하기

const arr = ['a', 1, 'd', 'e'];
arr.splice(1, 1, 'b', 'c');
document.write(arr);
// a,b,c,d,e

6. 예제5) 값 변경하기

cosnt arr = ['a', 1, 'c', 'd']
arr.splice(1, 1, 'b');
document.write(arr);
// a, b, c, d

0개의 댓글