码迷,mamicode.com
首页 > 编程语言 > 详细

js高级程序设计数组的一些方法

时间:2018-05-31 02:55:50      阅读:220      评论:0      收藏:0      [点我收藏+]

标签:个数   IV   sharp   ack   lifo   rip   style   sha   结构   

数组的栈方法:

栈是一种 LIFO(Last-In-First-Out, 后进先出)的数据结构,也就是最新添加的项最早被移除。

而栈中项的插入(叫做推入)和移除(叫做 弹出),只发生在一个位置——栈的顶部。

ECMAScript 为数组专门提供了 push()和 pop()方法,以便 实现类似栈的行为。

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

 push()返回的是数组现在的长度,pop()返回的是从数组被去除的那一项

队列方法

队列数据结构的访问规则是 FIFO(First-In-First-Out, 先进先出)。队列在列表的末端添加项,从列表的前端移除项。

结合使用 shift()和 push()方法,可以像使 用队列一样使用数组。

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 

代码中加粗的那一行使用 shift()方法从数组中取得了第一项,即"red"

ECMAScript 还为数组提供了一个 unshift()方法。顾名思义,unshift()与 shift()的用途相反: 它能在数组前端添加任意个项并返回新数组的长度。因此,同时使用 unshift()和 pop()方法,可以 从相反的方向来模拟队列,即在数组的前端添加项,从数组末端移除项,如下面的例子所示。

var colors = new Array(); //创建一个数组
var count = colors.unshift("red", "green"); //推入两项
alert(count); //2 
count = colors.unshift("black"); //推入另一项
alert(count); //3
var item = colors.pop(); //取得最后一项
alert(item); //"green"
alert(colors.length); //2 

总结:

push()从数组末端推入              返回的是数组长度

pop()从数组末端取出               返回取出的那一项

 

shift()从数组前端取出              返回取出的那一项

unshift()从数组末端推入          返回的是数组长度

js高级程序设计数组的一些方法

标签:个数   IV   sharp   ack   lifo   rip   style   sha   结构   

原文地址:https://www.cnblogs.com/woshimama/p/9114425.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!