栈和队列前端
栈:LIFO(先进后出)一种数据结构数组
队列:LILO(先进先出)一种数据结构数据结构
使用的js方法code
1.push();能够接收任意数量的参数,把它们逐个推动队尾(数组末尾),并返回修改后的数组长度。队列
2.pop();从数组末尾移除最后一项,减小数组的值,返回移除的项。ip
3.shift();移除数组第一项并返回该项同时将数组的长度减一。it
简单实现栈方法
使用push()和pop()结合实现简单栈数据
var colors = new Array(); var count = colors.push('red','white','blue'); alert(count);//3 var item = colors.pop(); alert(item);//blue alert(colors.length());//2
简单实现队列兼容
使用shift()与push()结合实现简单队列
var colors = new Array(); var count = colors.push('red','green'); alert(count);//2 var item = colors.shift(); alert(item);//red alert(colors.length());//1
额外补充
unshift()与shift()用途相反,unshift()在数组前端添加任意个项,并返回新数组的长度。
注意:IE7以及更早版本对JavaScript的实现中存在误差,其unshift()方法老是返回undefined而不是新数组的长度。IE8在非兼容模式下会返回正确的长度值。