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


Posted in Javascript onMay 10, 2017

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

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

Javascript 相关文章推荐
JavaScript 字符编码规则
May 04 Javascript
javascript Keycode对照表
Oct 24 Javascript
window.event快达到全浏览器支持了,以后使用就方便了
Nov 30 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
Jan 27 Javascript
基于javascript bootstrap实现生日日期联动选择
Apr 07 Javascript
JS实现淡入淡出图片效果的方法分析
Dec 20 Javascript
angular2倒计时组件使用详解
Jan 12 Javascript
JS实现自定义状态栏动画文字效果示例
Oct 12 Javascript
AngularJS中scope的绑定策略实例分析
Oct 30 Javascript
Vue用v-for给循环标签自身属性添加属性值的方法
Oct 18 Javascript
Mint UI实现A-Z字母排序的城市选择列表
Dec 28 Javascript
layui之数据表格--与后台交互获取数据的方法
Sep 29 Javascript
BootStrap的两种模态框方式
May 10 #Javascript
微信小程序之购物车功能
Sep 23 #Javascript
js canvas实现QQ拨打电话特效
May 10 #Javascript
bootstrap弹出层的多种触发方式
May 10 #Javascript
详解使用vue脚手架工具搭建vue-webpack项目
May 10 #Javascript
微信小程序 支付后台java实现实例
May 09 #Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 #Javascript
You might like
PHP学习之字符串比较和查找
2011/04/17 PHP
浅析PHP绘图技术
2013/07/03 PHP
去除php注释和去除空格函数分享
2014/03/13 PHP
PHP新建类问题分析及解决思路
2015/11/19 PHP
Zend Framework实现多服务器共享SESSION数据的方法
2016/03/22 PHP
PHP使用php-resque库配合Redis实现MQ消息队列的教程
2016/06/29 PHP
THINKPHP3.2使用soap连接webservice的解决方法
2017/12/13 PHP
javascript 写类方式之三
2009/07/05 Javascript
基于JQuery的访问WebService的代码(可访问Java[Xfire])
2010/11/19 Javascript
新浪微博字数统计 textarea字数统计实现代码
2011/08/28 Javascript
JS教程:window.location使用方法的区别介绍
2013/10/04 Javascript
JQuery异步加载无限下拉框级联功能实现示例
2014/02/19 Javascript
JS实现控制表格内指定单元格内容对齐的方法
2015/03/30 Javascript
jQuery监听文件上传实现进度条效果的方法
2016/10/16 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
Webpack框架核心概念(知识点整理)
2017/12/22 Javascript
VUE预渲染及遇到的坑
2018/09/03 Javascript
用jQuery实现抽奖程序
2020/04/12 jQuery
JavaScript实现图片放大预览效果
2020/11/02 Javascript
深入浅析python继承问题
2016/05/29 Python
使用python画个小猪佩奇的示例代码
2018/06/06 Python
基于python判断目录或者文件代码实例
2019/11/29 Python
python openCV自制绘画板
2020/10/27 Python
海淘零差价,宝贝全球购: 宝贝格子
2016/08/24 全球购物
美津浓巴西官方网站:Mizuno巴西
2019/07/24 全球购物
介绍一下write命令
2014/08/10 面试题
幼儿发展评估方案
2014/06/11 职场文书
法人委托书范本
2014/09/15 职场文书
扶贫办主任查摆“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
邀请函格式范文
2015/02/02 职场文书
采购员岗位职责范本
2015/04/07 职场文书
教师调动申请报告
2015/05/18 职场文书
母亲节感言
2015/08/03 职场文书
导游词之安徽醉翁亭
2020/01/10 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
pandas 实现将NaN转换为None
2021/05/14 Python