JS栈stack类的实现与使用方法示例


Posted in Javascript onJanuary 31, 2019

本文实例讲述了JS栈stack类的实现与使用方法。分享给大家供大家参考,具体如下:

栈是一种“先进后出”的数据结构,原理如下图所示:

JS栈stack类的实现与使用方法示例

示例代码:

/*使用栈stack类的实现*/
function stack() {
  this.dataStore = [];//保存栈内元素,初始化为一个空数组
  this.top = 0;//栈顶位置,初始化为0
  this.push = push;//入栈
  this.pop = pop;//出栈
  this.peek = peek;//查看栈顶元素
  this.clear = clear;//清空栈
  this.length = length;//栈内存放元素的个数
}
function push(element){
  this.dataStore[this.top++] = element;
}
function pop(){
  return this.dataStore[--this.top];
}
function peek(){
  return this.dataStore[this.top-1];
}
function clear(){
  this.top = 0;
}
function length(){
  return this.top;
}
/*测试stack类的实现*/
var s = new stack();
s.push("aa");
s.push("bb");
s.push("cc");
console.log(s.length());//3
console.log(s.peek());//cc
var popped = s.pop();
console.log(popped);//cc
console.log(s.peek());//bb

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

JS栈stack类的实现与使用方法示例

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

Javascript 相关文章推荐
js调用flash的效果代码
Apr 26 Javascript
JS 控制CSS样式表
Aug 20 Javascript
MooTools 1.2介绍
Sep 14 Javascript
jquery单行文字向上滚动效果示例
Mar 06 Javascript
javascript中interval与setTimeOut的区别示例介绍
Mar 14 Javascript
JavaScript 正则表达式中global模式的特性
Feb 25 Javascript
为什么JavaScript没有块级作用域
May 22 Javascript
15位和18位身份证JS校验的简单实例
Jul 18 Javascript
详解webpack es6 to es5支持配置
May 04 Javascript
JavaScript中附件预览功能实现详解(推荐)
Aug 15 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
Nov 22 Javascript
layui 选择列表,打勾,点击确定返回数据的例子
Sep 02 Javascript
JQuery中queue方法用法示例
Jan 31 #jQuery
JavaScript两种计时器的实例讲解
Jan 31 #Javascript
JavaScript对JSON数组简单排序操作示例
Jan 31 #Javascript
实例讲解v-if和v-show的区别
Jan 31 #Javascript
详解使用angular框架离线你的应用(pwa指南)
Jan 31 #Javascript
Angular PWA使用的Demo示例
Jan 31 #Javascript
vue.js指令v-for使用以及下标索引的获取
Jan 31 #Javascript
You might like
PHP提取数据库内容中的图片地址并循环输出
2010/03/21 PHP
php 数组使用详解 推荐
2011/06/02 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
PHP中的reflection反射机制测试例子
2014/08/05 PHP
使用YII2框架实现微信公众号中表单提交功能
2017/09/04 PHP
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
用javascript为页面添加天气显示实现思路及代码
2013/12/02 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
JS中判断字符串中出现次数最多的字符及出现的次数的简单实例
2016/06/03 Javascript
基于gulp合并压缩Seajs模块的方式说明
2016/06/14 Javascript
jQuery使用deferreds串行多个ajax请求
2016/08/22 Javascript
详解从react转职到vue开发的项目准备
2019/01/14 Javascript
详解js根据百度地图提供经纬度计算两点距离
2019/05/13 Javascript
[16:01]夜魇凡尔赛茶话会 第二期01:你比划我猜
2021/03/11 DOTA
在Linux系统上部署Apache+Python+Django+MySQL环境
2015/12/24 Python
深入理解Python中变量赋值的问题
2017/01/12 Python
浅谈Python基础之I/O模型
2017/05/11 Python
numpy数组拼接简单示例
2017/12/15 Python
Sublime开发python程序的示例代码
2018/01/24 Python
python2.7实现邮件发送功能
2018/12/12 Python
对python指数、幂数拟合curve_fit详解
2018/12/29 Python
基于python实现监听Rabbitmq系统日志代码示例
2020/11/28 Python
蛋白质世界:Protein World
2017/11/23 全球购物
亚洲独特体验旅游专家:eOasia
2018/08/15 全球购物
俄罗斯隐形眼镜和眼镜在线商店:Cronos
2020/06/02 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
代理商会议邀请函
2014/01/27 职场文书
培训楼经理岗位责任制
2014/02/10 职场文书
小学元宵节活动总结
2015/02/06 职场文书
停水通知
2015/04/16 职场文书
公司晚会主持词
2019/04/17 职场文书
小学生节约用水倡议书
2019/08/12 职场文书
如何把新闻人物写得立体、鲜活?
2019/08/14 职场文书
导游词之云南丽江-泸沽湖
2019/09/26 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js