一个用JS数组实现的队列
/*一个用数组实现的队列*/ function Queue(){ this.dataStore = [];//存放队列的数组,初始化为空 this.enqueue = enqueue;//向队列尾部添加一个元素 this.dequeue = dequeue;//删除队首的元素 this.theFront = theFront;//读取队首的元素 this.back = back;//对取队尾的元素 this.toStrings = toStrings;//显示队列内的所有元素 this.empty = empty;//判断队列是否为空 } function enqueue(element){ this.dataStore.push(element); } function dequeue(){ this.dataStore.shift(); } function theFront(){ return this.dataStore[0]; } function back(){ return this.dataStore[this.dataStore.length-1]; } function toStrings(){ return this.dataStore; } function empty(){ if(this.dataStore.length == 0){ return true; }else{ return false; } } /*测试程序*/ var q = new Queue(); q.enqueue("aa"); q.enqueue("bb"); q.enqueue("cc"); console.log(q.toStrings());//[ 'aa', 'bb', 'cc' ] q.dequeue(); console.log(q.toStrings());//[ 'bb', 'cc' ] console.log(q.theFront());//bb console.log(q.back());//cc