JS 배열 내장함수, splice

껌뻑이·2021년 7월 20일
0

JS Built-in functions

목록 보기
8/13
post-thumbnail

splice

splice()는 배열의 기존 요소를 삭제 또는 교체하거나 새로운 배열의 내용을 추가한다.

매개변수

  1. start - 배열에서 변경을 시작할 인덱스번호
  2. deleteCount - start에서 제거할 요소의 수
  3. item - 배열에 추가할 요소

예시

1. 제거

const arr = [1, 2, 3, 4, 5]

const newArr = arr.splice(1, 3);
// arr에서 인덱스 1부터 3개를 제거해줘!

console.log(newArr);
console.log(arr);

// 결과
[ 2, 3, 4 ]
[ 1, 5 ]

결과와 같이 제거할때는 2개의 매개변수를 필요로 한다.
그리고 여기서 중요한 것은 기존에 있던 arr에 영향을 가는 것이다.

2. 제거X, 추가(마지막 인덱스에 6추가하기)

const arr = [1, 2, 3, 4, 5]

const newArr = arr.splice(5, 0, 6);

console.log(newArr);
console.log(arr);

// 결과

[]
[ 1, 2, 3, 4, 5, 6 ]

아무것도 제거하지 않으면 [], 빈배열이 반환된다.
만약 start인자에 5가 아닌 10을 넣어도 마지막 배열에 6을 추가해준다.

3. 제거O, 추가(1자리에 6추가)

const arr = [1, 2, 3, 4, 5]

const newArr = arr.splice(0, 1, 6);

console.log(newArr);
console.log(arr);

// 결과

[ 1 ]
[ 6, 2, 3, 4, 5 ]

3개의 인자 모두 적어주면 제거한 자리에 추가할 item이 들어간다.

주의

splice는 filter, map, find같은 함수와 다르게 기존 arr에 직접 동작을 하는 함수이니깐 주의 해야한다.!!

기존 배열을 손상시키지 않고 원하는 배열부분만을 뽑아오려면 slice를 활용하면 된다.

실패값

아무 값도 제거하지 않았으면 [], 빈배열을 반환한다.

0개의 댓글