JavaScript 队列(一)

简介:

队列是遵循FIFO(First In First Out,先进先出,也称为先来先服务)原则的一组有序的项。
队列在尾部添加新元素,并从顶部移除元素。最新添加的元素必须排在队列的末尾。


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

73d5da41abfe56c17bdc929d9242b6eddc56a335

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


6efab1869072f77cc579de71871a9af95bee2342

目录
相关文章
|
6月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
235 0
|
6月前
|
JavaScript 前端开发 API
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)(下)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
76 0
|
3月前
|
JavaScript 前端开发
js事件队列
js事件队列
144 55
|
2月前
|
JavaScript 前端开发 API
详解队列在前端的应用,深剖JS中的事件循环Eventloop,再了解微任务和宏任务
该文章详细讲解了队列数据结构在前端开发中的应用,并深入探讨了JavaScript的事件循环机制,区分了宏任务和微任务的执行顺序及其对前端性能的影响。
|
1月前
|
存储 JavaScript 前端开发
js事件队列
【10月更文挑战第15天】
49 6
|
2月前
|
JavaScript 前端开发
js事件队列
js事件队列
27 0
|
3月前
|
JavaScript 前端开发
JavaScript——一个简单的队列Demo
JavaScript——一个简单的队列Demo
41 4
|
4月前
|
JavaScript
数据结构(用 JS 实现栈和队列【三种方式】)
数据结构(用 JS 实现栈和队列【三种方式】)
52 0
|
6月前
|
前端开发 JavaScript 算法
JavaScript 中实现常见数据结构:栈、队列与树
JavaScript 中实现常见数据结构:栈、队列与树
|
6月前
|
存储 JavaScript 索引
深入理解栈和队列(js的问题)
深入理解栈和队列(js的问题)
23 0