Javascript

배열에 요소 추가, 삭제

minsun309 2024. 8. 25. 13:00

자바스크립트에서 배열에 요소를 추가하는 방법

추가 - push() / unshift() / splice() / 배열이름[n]

 

push()

  • 배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환한다.

문법 : arr.push(element1[, ...[, elementN]])

const array = ['A', 'B', 'C']

const add = array.push('D');
console.log(array) // ["A","B","C","D"]

//여러개 추가할 경우
const array = ['A', 'B', 'C']

const add = array.push('D', 'E', 'F');
console.log(array) // ["A","B","C","D","E","F"]

 

unshift()

  • 새로운 요소를 배열의 맨 앞쪽에 추가하고, 새로운 길이를 반환한다.

문법 : arr.unshift([...elementN]);

const array = ['A', 'B', 'C']

const add = array.unshift('D');
console.log(array) // ["D","A","B","C"]

 

splice()

  • 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경한다.

문법 : array.splice(start[, deleteCount[, item1[, item2[, ...]]]]) (Optional는 deleteCount, items1, item2)

start : 배열의 변경을 시작할 인덱스

deleteCount : 0 이하라면 어떤 요소도 제거하지 않는다. ( 추가하고 싶을 때 0 기입 )

그래서 제거하지 않고 원하는 위치에 요소를 추가 할 수 있다.

const array = ['A', 'B', 'C']

const add = array.splice(2, 0, 'D');
console.log(array) 
// ["A","B","D","C"] index 2 ('C')위치에 'D' 추가 ["A","B","D","C"]

 

배열이름[n]

  • 특정 위치에 요소를 추가하는 방법
const array = ['A', 'B', 'C', 'D', 'E']

array[6] = 'H'
console.log(array)
// ["A","B","C","D","E", undefined,"H"]

 

삭제 - pop() / 배열이름.length -1 / shift() / splice() / delete

pop()

  • 배열에서 마지막 요소를 제거하고 그 요소를 반환한다.

문법 : arr.pop();

const array = ['A', 'B', 'C']

const out = array.pop();
console.log(array) // ["A","B"]

 

배열이름.length -1

  • 배열의 마지막 요소를 제거하는 방법
const array = ['A', 'B', 'C', 'D', 'E']

array.length = array.length -1;
console.log(array)
// ["A","B","C","D"]

 

 

shift()

  • 배열에서 첫 번째 요소를 제거하고, 제거된 요소를 반환한다.

문법 : arr.shift();

const array = ['A', 'B', 'C']

const out = array.shift();
console.log(array) // ["B","C"]

 

splice()

  • 특정 위치에서 부터 원하는 만큼 삭제
  • splice('위치 값n', '제거할 요소의 갯수')
const array = ['A', 'B', 'C', 'D', 'E']

const out = array.splice(2, 1); 
// ["A","B","D","E"] index 2 부터 1개의 요소('C')를 제거

const out = array.splice(2, 2); 
// ["A","B","E"] index 2 부터 2개의 요소('C', 'D')를 제거

 

 

delete

  • 배열의 요소는 그대로 두고 값만 삭제하는 방법
  • 배열의 length 속성에 영향을 주지 않는다.
const array = ['A', 'B', 'C', 'D', 'E']

delete array[1];
console.log(array)
// ["A",undefined,"C","D","E"]

 

 

참고

 

Array.prototype.push() - JavaScript | MDN

push() 메서드는 배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환합니다.

developer.mozilla.org

 

 

Array.prototype.unshift() - JavaScript | MDN

unshift() 메서드는 새로운 요소를 배열의 맨 앞쪽에 추가하고, 새로운 길이를 반환합니다.

developer.mozilla.org

 

 

Array.prototype.splice() - JavaScript | MDN

splice() 메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다.

developer.mozilla.org

 

 

Array.prototype.pop() - JavaScript | MDN

pop() 메서드는 Array 인스턴스의 메서드로, 배열에서 마지막 요소를 제거하고 그 요소를 반환합니다. 이 메서드는 배열의 길이를 변경합니다.

developer.mozilla.org

 

 

Array.prototype.shift() - JavaScript | MDN

shift() 메서드는 배열에서 첫 번째 요소를 제거하고, 제거된 요소를 반환합니다. 이 메서드는 배열의 길이를 변하게 합니다.

developer.mozilla.org