队列数据结构的访问规则是FIFO(Fist-In-Fist-Out,先进先出)。队列在列表的末端添加项,从列表的前端移除项。
shift();移除数组中的第一项并返回该项,同时将数组长度减 1。结合使用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
ES还为数组提供了一个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
相关知识:
栈数据结构