博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript引用类型之Array数组的栈方法与队列方法
阅读量:6912 次
发布时间:2019-06-27

本文共 695 字,大约阅读时间需要 2 分钟。

一、栈方法

ECMAScript数组也提供了一种让数组的行为类似与其他数据结构的方法。具体的来说,数组可以变现的向栈一样,栈就是一种可以限制插入和删除向的数据结构。栈是一种LIFO(Last In First Out先进后出)的数据结构,也就是最新添加的项最早被移出,ECMAScript为数组专门提供了push()和pop()方法,以便实现类似栈的行为。

1、push()方法可以接收任意数量的参数,把它们逐个添加到数组的末尾,并返回修改后数组的长度,代码如下:

分析上面的代码发现,每次push完返回的都是最后一次push后数组的长度!

 

2、pop()方法则从数组末尾移除最后一项,减少数组的length,返回移除的项。代码如下:

 

二、队列方法

通过Array类型的push()和pop()方法我们可以模拟栈的后进先出,从上面的代码可以看出,而队列数据结构的访问规则是FIFO(First-In-First-Out,先进先出)。队列在列表的末端添加项,在列表的前端移除项。由于push()是向数组末端添加项的方法,因此要模拟队列只需从数组前端取得项的方法。这个方法就是:

1、shift()   移除数组中的第一项并返回该项,同时数组长度减1 代码如下:

 

2、unshift()

ECMAScript还为数组提供了一个unshift()方法,顾名思义,该方法与shift()方法刚好相反,他是从顶端添加项,unshift()和pop()方法搭配,可以从反方向来模拟队列。代码如下:

 

 

转载于:https://www.cnblogs.com/GreenLeaves/p/5893608.html

你可能感兴趣的文章
什么是B端好产品
查看>>
马哥2016全新Linux+Python高端运维班第四周作业
查看>>
使用qemu工具创建虚拟机模板示例
查看>>
linux系统优化
查看>>
shell小技巧
查看>>
我的友情链接
查看>>
C++设计模式
查看>>
正则表达式(收藏版)
查看>>
2016 年回顾:版本帝 GitLab 发布了 12 个版本
查看>>
zoom与scale的异同点
查看>>
十二周一课 LNMP架构介绍、 MySQL安装、PHP安装、 Nginx介绍
查看>>
ansible playbook
查看>>
腾讯云发布企业级微服务中间件TSF,助企业构建亿级互联网应用架构
查看>>
ASA防火墙笔记及原理
查看>>
shell实例
查看>>
OSPF-概述
查看>>
IdCardUtils 工具类 (×××)
查看>>
selenium chrome driver和 IE driver 常见问题(1)
查看>>
射频卡机井灌溉控制器特点
查看>>
solidity智能合约[49]-安全-溢出***
查看>>