Array.unshift, Array.shift

Array.unshift

unshift 메소드는 인수로 전달받은 모든 값을 원본 배열의 맨 앞에 요소로 추가하고, 변경된 length 프로퍼티를 반환한다.

예시

const num = [1, 2, 3, 4]

let result = num.unshift(5);
console.log(num) // [5, 1, 2, 3, 4]
console.log(result) // 5

unshift 역시 원본 배열을 직접 변경하는 부수효과가 있다. push와 마찬가지로 스프레드 문법을 사용하는 것이 좋다.

Array.shift

shift 메소드는 원본 배열에서 첫 번째 요소를 제거하고, 제거한 요소를 반환한다. 원본 배열이 빈 배열이면 undefined를 반환한다. shift 메소드는 원본 배열을 직접 변경한다.

예시

const num = [6, 1, 2, 3, 4];

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

큐(Queue)와의 연관성

shift 와 push를 사용하면 큐를 구현할 수 있다.
큐는 데이터를 마지막에 밀어 넣고, 처음 데이터, 가장 먼저 넣은 데이터를 먼저 꺼내는, 선입선출의 구조이다.
First In First Out! 스택은 언제나 마지막에 밀어 넣은 최신 데이터를 얻지만, 스택은 데이터를 넣은 순서대로 얻게 된다.

좋은 웹페이지 즐겨찾기