배열 요소 삭제

배열도 객체이므로, delete 연산자를 사용할 수 있다.

var arr = ["zero", "one", "two", "three"];
delete arr[2];
console.log(arr);   //["zero", "one", undefined × 1, "three"]
console.log(arr.length);    //4

delete 연산자는 해당 요소의 값을 undefined로 설정할 뿐 원소 자체를 삭제하지는 않는다.

splice() 배열 메서드

보통 배열에서 원소를 완전히 삭제할 경우 splice() 배열 메서드를 사용한다.

splice(start, deleteCount, item...)
  • start - 배열에서 시작 위치
  • deleteCount - start에서 지정한 시작 위치부터 삭제할 요소의 수
  • item - 삭제할 위치에 추가할 요소
var arr = ["zero", "one", "two", "three"];
arr.splice(2,1);
console.log(arr);   //["zero", "one", "three"]
console.log(arr.length);    //3