JS) splice() 함수 삭제도 되고 삭제안해도되고 추가도 되고~

예진·2024년 11월 19일
0

splice?

자바스크립트의 splice() 메서드는 배열 객체에 사용할 수 있는 내장 메서드이다. 이는 기존 요소를 삭제하거나 교체하여 배열의 내용을 변경하며, 제거된 요소가 담긴 별도의 배열을 새로 반환
slice와 다른 점
splice는 매개변수는 배열의 변경을 시작할 인덱스를 지정한다.

let months = ["January", "February", "Monday", "Tuesday"];
let days = months.splice(2); // 인덱스 2부터 배열 변경
//["Monday", "Tuesday"]

deleteCount라는 두 번째 매개변수에 값을 전달하면 배열에서 제거할 요소의 수를 지정할 수도 있다.

let months = ["January", "February", "Monday", "Tuesday"];
let days = months.splice(2, 1); // 요소 하나만 삭제

console.log(days); // ["Monday"]
console.log(months); // ["January", "February", "Tuesday"]

세번째 인수부터 배열에 추가할 값들을 넣을 수 있다.

let months = ["January", "February", "Monday", "Tuesday"];
let days = months.splice(2, 2, "March", "April"); // 요소 두 개를 제외하고, 다른 요소를 추가

console.log(days); // ["Monday", "Tuesday"]
console.log(months); // ["January", "February", "March", "April"]
  • splice에서 삭제하지 않고 특정 인덱스에 배열에 새로운 값 넣기
let months = ["January", "February", "Monday", "Tuesday"];
months.splice(2, 0, "March"); // 두 번째 매개변수가 0이므로 기존 요소 모두 유지

console.log(months); 
// ["January", "February", "March", "Monday", "Tuesday"]
  • start부터 deletCount만큼 삭제후, newItem 추가
    Array.splice(start, deleteCount, newItem, newItem, newItem, ...)
  • start에 newItem 추가
    Array.splice(start,0,newItem..);

0개의 댓글

관련 채용 정보