JavaScript数组的栈方法与队列方法详解
2019/6/27 22:24:03
本文主要是介绍JavaScript数组的栈方法与队列方法详解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
数组(Array)和对象(Object)应该是JavaScript中使用最多也是最频繁的两种类型了,Array提供了很多常用的方法:栈方法、队列方法、重排序方法、操作方法、位置方法、迭代方法等等。
1、Array的栈方法
栈是一种LIFO(Last-In-First-Out,后进先出)的数据结构,也就是最新添加的项最早被移除。栈中项的插入(push)和移除,只发生在一个位置——栈的顶部。ECMAScript为数组提供了push()和pop()方法,可以实现类似栈的行为。下面两图分别演示了入栈与出栈操作。
push()方法可以接收任意数据的参数,把它们逐个添加到数组末尾,并返回修改后的数组长度。pop()方法从数组末尾移除最后一项,减少数组的length值
var students = []; students.push("bluce","jordan","marlon","kobe");//入栈4项 alert(students.length); //4 alert(students[0]); //"bluce",第一项在栈的底部 alert(students[1]); //"jordan" students.push("paul"); alert(students.length); //5 var item = students.pop(); //"paul" alert(students.length); //4
2、Array的队列方法
栈数据结构的访问规则是LIFO(后进先出),而队列数据结构的访问规则是FIFO(First-In-First-Out,先进先出)。队列在列表的末端添加项,从列表的前端移除项。push()方法是向数组末端添加项的方法,因此要模拟队列只需一个从数组前端取得项的方法——shift(),其能够移除数组中的第一个项并返回该项,同时数组的length-1。结合使用shift()和push()方法,可以像使用队列一样使用数组。
var students = []; students.push("bluce","jordan","marlon","kobe");//入队4项 //students=["bluce","jordan","marlon","kobe"]; alert(students.length); //4 alert(students[0]); //"bluce",第一项在栈的底部 alert(students[1]); //"jordan" students.push("paul"); alert(students.length); //5 //students=["bluce","jordan","marlon","kobe","paul"]; var item = students.shift(); //"bluce" alert(students.length); //4 //students=["jordan","marlon","kobe","paul"];
此外,ECMAScript还提供了unshift()方法,它能在数组前端添加任意个项并返回新数组的长度。因此,结合使用unshift()和pop()方法,可以从相反的方向来模拟队列,即在数组的前端添加项,从数组末端移除项
这篇关于JavaScript数组的栈方法与队列方法详解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-28Vue入门教程:从零开始搭建第一个Vue项目
- 2024-12-28Vue CLI入门指南:快速搭建Vue项目
- 2024-12-28Vue3基础知识入门教程
- 2024-12-28Vue3公共组件开发与使用入门教程
- 2024-12-28Vue CLI学习:新手入门教程
- 2024-12-28Vue CLI学习:轻松入门与实践指南
- 2024-12-28Vue3公共组件学习入门指南
- 2024-12-28Vue3公共组件学习:从入门到上手实战
- 2024-12-28Vue3学习:从入门到初级实战教程
- 2024-12-28Vue3学习:新手入门与初级教程