ECMAScript 给数组提供几个方法,让它看起来像是另外一种数据结构。数组对象可以像栈一样, 也就是一种限制插入和删除项的数据结构。栈是一种后进先出(LIFO,Last-In-First-Out)的结构,也就 是最近添加的项先被删除。数据项的插入(称为推入,push)和删除(称为弹出,pop)只在栈的一个 地方发生,即栈顶。ECMAScript 数组提供了 push()和 pop()方法,以实现类似栈的行为。 push()方法接收任意数量的参数,并将它们添加到数组末尾,返回数组的最新长度。pop()方法则 用于删除数组的最后一项,同时减少数组的 length 值,返回被删除的项。来看下面的例子:
let colors = new Array();
let count = colors.push("red",
alert(count);
count = colors.push("black");
alert(count);
let item = colors.pop();
alert(item);
alert(colors.length);
// 创建一个数组 "green"); // 推入两项
// 2
// 再推入一项 // 3
// 取得最后一项
// black
这里创建了一个当作栈来使用的数组(注意不需要任何额外的代码,push()和 pop()都是数组的 默认方法)。首先,使用 push()方法把两个字符串推入数组末尾,将结果保存在变量 count 中(结果 为 2 )。
然后,再推入另一个值,再把结果保存在 count 中。因为现在数组中有 3 个元素,所以 push()返 回 3。在调用 pop()时,会返回数组的最后一项,即字符串"black"。此时数组还有两个元素。
栈方法可以与数组的其他任何方法一起使用,如下例所示:
let colors = ["red", "blue"];
colors.push("brown");
colors[3] = "black";
alert(colors.length);
let item = colors.pop();
alert(item);
// 再添加一项 // 添加一项 // 4
// 取得最后一项 // black
这里先初始化了包含两个字符串的数组,然后通过 push()添加了第三个值,第四个值是通过直接 在位置 3 上赋值添加的。调用 pop()时,返回了字符串"black",也就是最后添加到数组的字符串。
标签:pop,js,colors,black,数组,push,alert,方法 From: https://blog.51cto.com/u_16298172/9233152