JS使用数组实现的队列功能示例


Posted in Javascript onMarch 04, 2019

本文实例讲述了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

这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行结果:

JS使用数组实现的队列功能示例

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
用JS操作FRAME中的IFRAME及其内容的实现代码
Jul 26 Javascript
ymPrompt的doHandler方法来实现获取子窗口返回值的方法
Jun 25 Javascript
Javascript计算两个marker之间的距离(Google Map V3)
Apr 26 Javascript
邮箱下拉自动填充选择示例代码附图
Apr 03 Javascript
将数字转换成大写的人民币表达式的js函数
Sep 21 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
Jan 13 Javascript
jQuery老黄历完整实现方法
Jan 16 Javascript
JS 作用域与作用域链详解
Apr 07 Javascript
vue用addRoutes实现动态路由的示例
Sep 15 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
Oct 10 Javascript
ES6的解构赋值实例详解
May 06 Javascript
Vue如何实现变量表达式选择器
Feb 18 Vue.js
JS使用栈判断给定字符串是否是回文算法示例
Mar 04 #Javascript
微信小程序textarea层级过高(盖住其他元素)问题的解决办法
Mar 04 #Javascript
一步快速解决微信小程序中textarea层级太高遮挡其他组件
Mar 04 #Javascript
使用ESLint禁止项目导入特定模块的方法步骤
Mar 04 #Javascript
微信小程序textarea层级过高的解决方法
Mar 04 #Javascript
浅析vue中的MVVM实现原理
Mar 04 #Javascript
JavaScript实现的九种排序算法
Mar 04 #Javascript
You might like
世界咖啡生产者论坛呼吁:需要立即就咖啡价格采取认真行动
2021/03/06 咖啡文化
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
详解WordPress中给链接添加查询字符串的方法
2015/12/18 PHP
php抽奖概率算法(刮刮卡,大转盘)
2020/04/17 PHP
解决出现SoapFault (looks like we got no XML document)的问题
2017/06/24 PHP
IE6与IE7中,innerHTML获取param的区别
2009/03/15 Javascript
jQuery.validate 常用方法及需要注意的问题
2013/03/20 Javascript
dwz 如何去掉ajaxloading具体代码
2013/05/22 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
jquery模拟进度条实现方法
2015/08/03 Javascript
Angular表单验证实例详解
2016/10/20 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
vuejs手把手教你写一个完整的购物车实例代码
2017/07/06 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
2018/12/29 jQuery
生产制造追溯系统之在线打印功能
2019/06/03 Javascript
Vue js with语句原理及用法解析
2020/09/03 Javascript
python制作花瓣网美女图片爬虫
2015/10/28 Python
在Django同1个页面中的多表单处理详解
2017/01/25 Python
Python入门之后再看点什么好?
2018/03/05 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
python flask几分钟实现web服务的例子
2019/07/26 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
Python交互环境下打印和输入函数的实例内容
2020/02/16 Python
python判断是空的实例分享
2020/07/06 Python
使用pygame实现垃圾分类小游戏功能(已获校级二等奖)
2020/07/23 Python
浅谈css3新单位vw、vh、vmin、vmax的使用详解
2017/12/01 HTML / CSS
美国室内和室外装饰花盆购物网站:ePlanters
2019/03/22 全球购物
英国领先的维生素和营养补充剂直接供应商:Healthspan
2019/04/22 全球购物
2013年军训通讯稿
2014/02/05 职场文书
保密协议书范本
2014/04/22 职场文书
师范生见习报告范文
2014/11/03 职场文书
经理岗位职责
2015/02/02 职场文书
CSS3 制作的书本翻页特效
2021/04/13 HTML / CSS
Python爬虫之爬取哔哩哔哩热门视频排行榜
2021/04/28 Python
MySQL 用 limit 为什么会影响性能
2021/09/15 MySQL
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL