栈:是一种LIFO(Last-In-First--0ut)的数据结构,也就是最新添加的像最早移除。
栈是一种限制插入和删除项的数据结构,对于栈中项的插入和移除,通常只发生在栈的顶部。
ECMAScript为数组专门提供了push()和pop()方法,以实现类似栈的行为。
push()方法:可以接收任意数量的参数,并把它们添加到数组的末尾,并返回修改后的数组的长度。
pop()方法:从数组末尾移除一项,减少数组的长度( length值 ),然后返回移除的项。
例1:
var arr=['Tom','Jim','Herry'];
alert(arr.length); // 此时返回值为3,即数组的长度是3
arr.push('Kim','Steve');
alert(arr.length); // 此时返回值为5,即数组的长度是5
也可使用如下方法来验证:alert(arr[3]+'\n'+arr[4]),使用push()方法添加到数组的项被添加到了数组末尾。
alert(arr.pop()); // 返回值是Steve,即是数组的最后一项,此时数组的长度减去1。
综上:在数组中结合使用push()方法和pop()方法,可以实现类似的栈方法