Array的栈方法和队列方法

一、栈数据结构 , LIFO ( Last-In-First-Out,后进先出 )的数据结构;

push() 方法可以接收任意数量的参数,把他们逐个添加到数组末尾,并返回修改后数组的长度;

pop() 方法则从数组末尾移除最后一项,减少数组的length值,然后返回移除的项;

 1 var colors = new Array();                  // 创建一个数组
 2 var count = colors.push("red", "green");   // 推入两项
 3 alert(count);   // 2
 4
 5 count = colors.push("black");              // 推入另一项
 6 alert(count);   // 3
 7
 8 var item = colors.pop();                   // 取得最后一项
 9 alert(item);     // "black"
10 alert(colors.length);    // 2

二、队列数据结构,FIFO ( First-In-First-Out,先进先出 );

shift()方法,它能够移除数组中的第一个项并返回该项,同时将数组长度减1;

var colors = new Array();
var count = colors.push("red", "green");
alert(count);  // 2

count = colors.push("black");
alert(count);   // 3

var item = colors.shift();    //取得第一项
alert(item);    // red
alert(colors.length);   // 2
时间: 2024-12-10 10:09:09

Array的栈方法和队列方法的相关文章

JavaScript高级程序设计--对象,数组(栈方法,队列方法,重排序方法,迭代方法)

1.使用对象字面量定义对象 var person={}; 使用这种方式创建对象时,实际上不会调用Object构造函数. 开发人员更喜欢对象字面量的语法. 2.有时候需要传递大量可选参数的情形时,一般来讲使用对象字面量来封装多个可选参数. 3.对象属性的点表示法与方括号表示法的区别 (1)功能上:两者没区别 (2)但是方括号的有点是可以通过变量来访问属性 例如: var person={ name:"Nic" } 点表示法:person.name 方括号表示法:var prop=“nam

关于Array 栈方法和队列方法

栈方法: 推入 -- 弹出 // 栈方法 var colors = new Array(); var count = colors.push("red","green"); console.log(count);//2 count = colors.push("black"); var item = colors.pop(); console.log(colors)://red,green console.log(item);//black 队列

【引用方法】队列方法

队列数据结构的访问方法是先进先出.在列表末端添加项,在前端移除项. 1 <script> 2 var arr1 = ["a","b","c",undefined,null]; 3 //shift() 4 //从数组前端取得项 5 //返回取得的项 6 console.log(arr1.shift()); //输出:a 7 console.log(arr1); //输出:(4) ["b", "c"

【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型

前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 7.位置方法 8.迭代方法 9.归并方法 在实例中介绍,实例如下 /* Array类型 js数组中的每一项可以用来保存任何类型的数据:js数组的大小是可以动态调整的 */ var colors = ["red", "blue", "green"];

Array的队列方法&amp;重排序方法—— JS学习笔记2015-6-27(第68天)

队列方法 相对于栈数据结构的后进先出[LIFO]访问规则,队列数据结构的访问规则是先进先出[FIFO] 这里提到一个方法  shift(); 它能够移除数组中的第一个项,并返回该项,同时将数组长度减1:// 有点像pop() 实例: var colors = ['red','green']; var item = colors.shift(); alert(colors);  // green alert(item);  // red alert(colors.length)  // 1; 同时

javascript中array类型队列方法总结

队列方法 数组推入: push()    unshift()   调用方法返回数组新长度 数组移除: pop()     shift()       调用方法返回移除的那个元素 注:ie7及更早的版本中,unshift()方法总是返回undefined Demo

JS高程5.引用类型(6)Array类型的位置方法,迭代方法,归并方法

一.位置方法 ECMAScript5为数组实例添加了两个位置:indexOf()和 lastIndexOf().这两个方法接收两个参数:要查找的项和(可选的)表示查找起点位置的索引(如在数组[7,8,9,1,0]中,"7"在第一个位置,它的索引是0.).其中,indexOf()方法从数组的开头(位置0)开始向后查找,lastIndexOf()方法从数组的末尾开始向前查找. 注意: 这两个方法都返回要查找的项在数组中的位置,在没有找到的情况下返回-1. 在比较第一个参数与数组中的每一项时

Eclipse中的快捷键快速生成常用代码(例如无参、带参构造,set、get方法),以及Java中重要的内存分析(栈、堆、方法区、常量池)

Eclipse中的快捷键快速生成常用代码(例如无参.带参构造,set.get方法),以及Java中重要的内存分析(栈.堆.方法区.常量池) 以上就是Eclipse中的快捷键快速生成常用代码(例如无参.带参构造,set.get方法),以及Java中重要的内存分析(栈.堆.方法区.常量池)的全部内容了,更多内容请关注:CPP学习网_CPP大学 本文固定链接:CPP学习网_CPP大学-Eclipse中的快捷键快速生成常用代码(例如无参.带参构造,set.get方法),以及Java中重要的内存分析(栈.

java栈、堆、方法区

1.java中的栈(stack)和堆(heap)是java在内存(ram)中存放数据的地方 2.堆区 存储的全部是对象,每个对象都包含一个与之对应的class的信息.(class的目的是得到操作指令): jvm只有一个heap区,被所有线程共享,不存放基本类型和对象引用,只存放对象本身. 堆的优劣势:堆的优势是可以动态的分配内存大小,生存期也不必事先告诉编译器,java的垃圾收集器会自动收取这些不在使用的数 据,但缺点是,由于要在运行时动态分配内存,存取速度慢. 3.栈区 每一个线程包含一个st