배열의 특정한 위치에서 요소를 추가 또는 삭제하기

배열의 특정한 위치에서 요소를 추가 또는 삭제하기

  • Array.splice는 배열의 중간에서 요소를 삭제하거나 추가할 수 있다.
  • 오늘은 배열 중간에 원하는 값을 추가하기 위해 Array.splice를 사용하였다.
  • Array.splice의 추가/삭제에 대해 정리해보자.

Array.splice(시작 인덱스의 위치, 삭제할 요소의 개수(추가할 때는 0을 넣음), elements); 의 형식으로 사용한다.

1. 배열의 특정한 위치에서 요소를 삭제하기

1
2
3
4
5
let arr = [a, b, c, d, e];
arr.splice(3, 1);
// d
console.log(arr);
// [a, b, c, e];
  • 배열에서 splice를 이용해서 삭제를 하기 위해서는 세 번째 인자는 주지 않는다.
  • -> Array.splice(시작 인덱스의 위치, 삭제할 요소의 개수);
  • 인덱스0부터 시작한다.
  • 3번째 요소인 d가 삭제된 상태가 된다.
  • splice를 사용하면, 삭제된 요소가 return된다.
  • splice는 원본 배열을 변경하기 때문에 arr.aplice를 실행한 후에는
    배열 arr에는 d가 삭제되어 있다.

2. 배열의 특정한 위치에서 추가하기

1
2
3
4
5
6
let scheArr = ["오늘", "오후", "2시", "알려줄게."];
scheArr.splice(3, 0, "일정");
console.log(scheArr);
// [ '오늘', '오후', '2시', '일정', '알려줄게.' ]
scheArr.join(" ");
//'오늘 오후 2시 일정 알려줄게.'
  • splice를 이용하여 배열의 특정한 위치에 요소를 추가할 때는
    Array.splice(시작 인덱스의 위치, 0, elements); 의 형식으로 사용한다.
  • 배열에서 요소를 삭제할 때와 다른 점은 2번째 인자 값을 꼭 0으로 주어야 한다는 것이다.
    0 이외에 다른 인덱스값을 넣을 경우에는 해당 인덱스에 있는 요소의 개수만큼 값이 세번째 인자로 준
    elements값으로교체되니 주의하자.