天天看点

JavaScript 队列(一)

队列是遵循 FIFO(First In First Out,先进先出,也称为先来先服务)

原则的一组有序的项。

队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。

在现实中,最常见的队列的例子就是排队。

JavaScript 队列(一)
function Queue(){//声明队列对象
    
    var items = [];//队列的承载

    //向队列尾部添加一个或多个新的项
    this.enqueue = function(el){
        items.push(el)
    }

    //删除队列头部第一个元素
    this.dequeue = function(){
        return items.shift();
    }

    //返回队列中第一个元素
    this.front = function(){
        return items[0];
    }

    //确定元素是否为空 为空则为true 不为空则为false
    this.isEmpty = function(){
        return items.length === 0;
    }

    //返回队列长度
    this.size = function(){
        return items.length;
    }

    //打印队列
    this.print = function(){
        console.log(items.toString())
    }
}           

使用队列类:

//实例化类
var queue = new Queue();

//验证是否为空
console.log(queue.isEmpty())   //true

queue.enqueue('ma');
queue.enqueue('jack');

queue.print();//ma,jack

console.log(queue.size())//2

queue.dequeue();//jack
queue.print();//jack
console.log(queue.size())//1           
JavaScript 队列(一)

继续阅读