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 相关文章推荐
B/S开发中常用javaScript技术与代码
Mar 09 Javascript
如何用js控制css中的float的代码
Aug 16 Javascript
JS随机漂浮广告代码具体实例
Nov 19 Javascript
javascript函数声明和函数表达式区别分析
Dec 02 Javascript
jQuery滚动条插件nanoscroller使用指南
Apr 21 Javascript
javascript实现二级级联菜单的简单制作
Nov 19 Javascript
js事件源window.event.srcElement兼容性写法(详解)
Nov 25 Javascript
JQuery学习总结【二】
Dec 01 Javascript
关于react中组件通信的几种方式详解
Dec 10 Javascript
webpack dll打包重复问题优化的解决
Oct 10 Javascript
js实现掷骰子小游戏
Oct 24 Javascript
利用js实现简易红绿灯
Oct 15 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
第四节 构造函数和析构函数 [4]
2006/10/09 PHP
PHP XML操作类DOMDocument
2009/12/16 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
php数组键名技巧小结
2015/02/17 PHP
Django中通过定时任务触发页面静态化的处理方式
2018/08/29 PHP
PHP Redis扩展无法加载的问题解决方法
2019/08/22 PHP
JS 拼图游戏 面向对象,注释完整。
2009/06/18 Javascript
jquery链式操作的正确使用方法
2014/01/06 Javascript
document.compatMode的CSS1compat使用介绍
2014/04/03 Javascript
js图片预加载示例
2014/04/30 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
JavaScript实战之带收放动画效果的导航菜单
2016/08/16 Javascript
浅谈JavaScript事件绑定的常用方法及其优缺点分析
2016/11/01 Javascript
深入理解Javascript箭头函数中的this
2017/02/13 Javascript
webpack2.0搭建前端项目的教程详解
2017/04/05 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
2017/06/22 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
2018/07/10 Javascript
在element-ui的el-tree组件中用render函数生成el-button的实例代码
2018/11/05 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
p5.js临摹动态图形实现方法详解
2019/10/23 Javascript
[54:43]DOTA2-DPC中国联赛 正赛 CDEC vs Dynasty BO3 第一场 2月22日
2021/03/11 DOTA
Python实现爬取逐浪小说的方法
2015/07/07 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
2020/02/21 Python
Chupi官网:在爱尔兰手工制作的订婚、结婚戒指和精美珠宝
2020/09/28 全球购物
爱心捐助倡议书
2014/05/19 职场文书
倡议书的写法
2014/08/30 职场文书
检察院对照“四风”认真查找问题落实整改措施
2014/09/26 职场文书
违章停车检讨书
2014/10/21 职场文书
2014初中数学教研组工作总结
2014/12/19 职场文书
小学一年级学生评语大全
2014/12/25 职场文书
中秋节随笔
2015/08/15 职场文书
《棉鞋里的阳光》教学反思
2016/02/20 职场文书
分家协议书范本
2016/03/22 职场文书
MybatisPlus EntityWrapper如何自定义SQL
2022/03/22 Java/Android