JavaScript

超轻量级php框架startmvc

JS实现队列的先进先出功能示例

更新时间:2020-05-10 22:36:01 作者:startmvc
本文实例讲述了JS实现队列的先进先出功能。分享给大家供大家参考,具体如下:/***[Queue]*@

本文实例讲述了JS实现队列的先进先出功能。分享给大家供大家参考,具体如下:


/**
 * [Queue]
 * @param {[Int]} size [队列大小]
 */
function Queue(size) {
 var list = [];
 //向队列中添加数据
 this.push = function(data) {
 if (data==null) {
 return false;
 }
 //如果传递了size参数就设置了队列的大小
 if (size != null && !isNaN(size)) {
 if (list.length == size) {
 this.pop();
 }
 }
 list.unshift(data);
 return true;
 }
 //从队列中取出数据
 this.pop = function() {
 return list.pop();
 }
 //返回队列的大小
 this.size = function() {
 return list.length;
 }
 //返回队列的内容
 this.quere = function() {
 return list;
 }
}
//初始化没有参数的队列
var queue = new Queue();
for (var i = 1; i <= 5; i++) {
 queue.push(i);
}
console.log(queue.quere());
console.log(queue.pop()); //从队列中取出一个
console.log(queue.quere());
var queue = new Queue(3);
for (var i = 1; i <= 5; i++) {
 queue.push(i);
}
console.log(queue.quere());
console.log(queue.pop());
console.log(queue.quere());

结果:


[ 5, 4, 3, 2, 1 ]
1
[ 5, 4, 3, 2 ][ 5, 4, 3 ]
3
[ 5, 4 ]

JS 队列 先进先出