Javascript Cookbook

값에 순차적으로 저장하고 접근하기

문제

값을 저장할 때 저장한 순서대로 접근할 수 있게 만들고 싶다.

해결

자바스크립트 Array 객체의 push 메서드를 사용하면 큐에 원소를 추가할 수 있으며, shift 메서드를 사용하면 큐에서 원소를 추출할 수 있다.

var queue = new Array();

queue.push('first');
queue.push('second');
queue.push('third');

alert(queue.shift());   //first 반환
alert(queue.shift());   //second 반환
alert(queue);   //third 반환

설명

queue는 원소를 한번에 하나씩 추가하고 먼저 들어간 원소가 먼저 나오도록 하는(FIFO, First In First Out) 배열이다.

Array의 push 메서드는 새로운 배열 원소를 배열의 끝에 추가한다.

queue.push('first');

원소가 추가될 때마다 배열의 크기가 1씩 증가한다.

Array의 shift 메서드는 배열의 제일 앞에서 원소를 추출하고 그 원소를 배열에서 제거한 후 반환한다.

var elem = queue.shift();

원소가 추출될 때마다 배열의 크기는 1씩 감소한다.