队列是一种先进先出(FIFO)的数据结构,其实现方式主要分两种:顺序队列和链式队列,本文将给出顺序队列的JavaScript实现。
JavaScript提供的数组原生方法:push()可以在数组末尾插入元素,shift()可以删除数组的第一个元素,利用这两个方法可以很容易实现队列的“入队”和“出队”。代码如下:
function Queue(){
this.items = [];
}
Queue.prototype = {
enqueue:function(data){
this.items.push(data);
},
dequeue:function(){
return this.items.shift();
},
front:function(){
return this.items[0];
},
rear:function(){
return this.items[this.items.length-1];
},
clear:function(){
this.items = [];
},
length:function(){
return this.items.length;
},
displayAll:function(){
return this.items.join();
}
}
测试:
var queue = new Queue();
queue.enqueue('aaa');
queue.enqueue('bbb');
console.log(queue.length());//输出2
queue.dequeue();
console.log(queue.displayAll());//输出bbb
初学者学习笔记,如有不对,还希望高手指点。如有造成误解,还希望多多谅解。