본문 바로가기

JavaScript

배열의 메소드 1 (push, pop, shift, unshift, splice, slice, concat)

요소를 더하거나 지우기

 

push, pop, shift, unshift 에 대한 요약

 

1.  push

배열 뒷부분에 값을 삽입

let arr = [ 1, 2, 3, 4 ];
arr.push( 5 );
console.log( arr ); // [ 1, 2, 3, 4, 5 ]

2.  pop

배열 뒷부분의 값을 삭제

let arr = [ 1, 2, 3, 4 ];
arr.pop();
console.log( arr ); // [ 1, 2, 3 ]

3. unshift

배열 앞부분에 값을 삽입

let arr = [ 1, 2, 3, 4 ];
arr.unshift( 0 );
console.log( arr ); // [ 0, 1, 2, 3, 4 ]

4. shift

배열 앞부분의 값을 삭제

let arr = [ 1, 2, 3, 4 ];
arr.shift();
console.log( arr ); // [ 2, 3, 4 ]

5. splice

배열의 특정위치에 요소를 추가하거나 삭제, 교체

arr.splice(index[, deleteCount, elem1, ..., elemN] )

deleteCount - 제거할 요소 개수 / elemN - 배열에 추가될 요소 (갯수제한 없음)

let arr = [ 1, 2, 3, 4, 5, 6, 7 ];
arr.splice( 3, 2 );
console.log( arr ); // [ 1, 2, 3, 6, 7 ]   3번째 인덱스에서부터 2개 제거

let arr = [ 1, 2, 3, 4, 5, 6, 7 ];
arr.splice( 2, 1, "a", "b");
console.log( arr ); // [ 1, 2, "a", "b", 4, 5, 6, 7 ] 2번째 인덱스에서 1개 제거 후 "a"와 "b"를 추가

6. slice

배열의 start인덱스부터 end인덱스까지(end인덱스는 제외)에 대한 요소를 복사해 새로운 배열을 반환.

arr.slice([start], [end])

let arr = ["t", "e", "s", "t"];

console.log( arr.slice(1, 3) ); // e,s (인덱스가 1인 요소부터 인덱스가 3인 요소까지를 복사(인덱스가 3인 요소는 제외))

console.log( arr.slice(-2) ); // s,t (인덱스가 -2인 요소부터 제일 끝 요소까지를 복사)

7. concat

기존 배열들을 합쳐 새로운 배열을 만들거나 기존 배열에 요소를 추가, 새로운 배열을 반환.

arr.slice([start], [end])

let arr1 = [ 1, 2, 3 ];
let arr2 = [ 4, 5, 6 ];
let arr3 = arr2.concat( arr1 );
console.log( arr3 ); // [ 4, 5, 6, 1, 2, 3 ]