Javascript中的LIFO(栈方法)和FIFO(队列方法)

js栈方法:

Javascript中提供了一种类似于栈的数据结构处理方法,LIFO(后入先出)类似于栈的行为,ECMAScript为数组提供了push()和pop()方法。

Push() 可接受任意参数将他们添加到数组尾并返回数组的长度,pop()方法从数组移除最后一项,减少数组的length值,并返回移除的项。

Var color=new Array();                          //创建数组
Var count=color.push(“red”,”green”);            //向数组添加两项
Alert(count);                                                           //2

count=color.push(“black”);                      //向数组添加一项
alert(count);                                                            //3

var item=color.pop();                           //取得最后一项
alert(item);                                    //black
alert(color.lenght);                            //2

js队列方法:

队列数据结构的访问规则是FIFO(先进先出),push()是向数组的最后一项添加数据的方法,shift()方法可以实现获取数组的最前一项,并返回该项的值,同时数组长度减少1。结合shift()和push()方法可以队列一样操作数组unshift()方法和shift()方法相反在数组的最前端加入任意多个项并返回数组长度。

Var color=new Array();                         //创建数组
Var count=color.push(“red”,”green”);           //向数组添加两项
Alert(count);                                                         //2

count=color.push(“black”);                     //向数组添加一项
alert(count);                                                          //3

var item=color.shift();                       //取得最前一项
alert(item);                                  //red
alert(color.lenght);                          //2
count=color.unshift(“black”);                     //向数组最前添加一项 [black,green,black]
alert(color.lenght);                              //3

转自:博客