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 相关文章推荐
简单实例处理url特殊符号&处理(2种方法)
Apr 02 Javascript
JavaScript面向对象的实现方法小结
Apr 14 Javascript
JavaScript实现模仿桌面窗口的方法
Jul 18 Javascript
深入解析JavaScript中的arguments对象
Jun 12 Javascript
微信小程序 开发之顶部导航栏实例代码
Feb 23 Javascript
浅谈ajax在jquery中的请求和servlet中的响应
Jan 22 jQuery
vue-router 前端路由之路由传值的方式详解
Apr 30 Javascript
小程序实现短信登录倒计时
Jul 12 Javascript
一文看懂如何简单实现节流函数和防抖函数
Sep 05 Javascript
微信小程序点击保存图片到本机功能
Dec 13 Javascript
Javascript类型判断相关例题及解析
Aug 26 Javascript
vue+element实现动态加载表单
Dec 13 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
Zend Framework实现将session存储在memcache中的方法
2016/03/22 PHP
php实现图片缩略图的方法
2016/03/29 PHP
Yii框架连表查询操作示例
2019/09/06 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
JavaScript 计算图片加载数量的代码
2011/01/01 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
2013/03/11 Javascript
Jquery中的层次选择器与find()的区别示例介绍
2014/02/20 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
js实现点击左右按钮轮播图片效果实例
2015/01/29 Javascript
js中hash和ico的关联分析
2015/02/05 Javascript
angularJS 中input示例分享
2015/02/09 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
2015/12/11 Javascript
JavaScript 不支持 indexof 该如何解决
2016/03/30 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
2016/04/27 Javascript
Javascript实现运算符重载详解
2018/04/07 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
详解实现一个通用的“划词高亮”在线笔记功能
2019/04/23 Javascript
深入浅析vue-cli@3.0 使用及配置说明
2019/05/08 Javascript
Vue项目中使用better-scroll实现菜单映射功能方法
2019/09/11 Javascript
Vue利用Blob下载原生二进制数组文件
2019/09/25 Javascript
vue实现设置载入动画和初始化页面动画效果
2019/10/28 Javascript
Python内建数据结构详解
2016/02/03 Python
django在接受post请求时显示403forbidden实例解析
2018/01/25 Python
实例讲解python中的协程
2018/10/08 Python
解决.ui文件生成的.py文件运行不出现界面的方法
2019/06/19 Python
Python循环结构的应用场景详解
2019/07/11 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
2019/11/11 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
2020/10/15 Python
python爬虫快速响应服务器的做法
2020/11/24 Python
Python实现网络聊天室的示例代码(支持多人聊天与私聊)
2021/01/27 Python
美国相机和电子产品零售商:Beach Camera
2020/11/26 全球购物
公司委托书格式范本
2014/09/16 职场文书
2015年药店工作总结
2015/04/20 职场文书
2015年政务公开工作总结
2015/05/19 职场文书
《伯牙绝弦》教学反思
2016/02/16 职场文书