数组的pop,push,shift,unshift()分别是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组的pop,push,shift,unshift()分别是啥?相关的知识,希望对你有一定的参考价值。

参考技术A pop 删除并返回数组的最后一个元素
push 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
shift 删除并返回数组的第一个元素
unshift 向数组的开头添加一个或更多元素,并返回新的长度。

concat 连接两个或多个数组,并返回结果

reverse 颠倒数组中元素的顺序

sort 对数组的元素进行排序

slice 返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

splice 方法向/从数组中添加/删除项目,然后返回被删除的项目数组。 该方法会改变原始数组。
splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

纯函数:1.不会改变原数组(没有副作用);2.返回一个数组

数组中shift(),push(),unshift(),pop()方法

Javascript为数组专门提供了push和pop()方法,以便实现类似栈的行为。来看下面的例子:

var colors=new Array();       //创建一个数组

var count=colors.push("red","green");   //  推入两项,返回修改后数组的长度

alert(count);   // 2   返回修改后数组的长度

var item=colors.pop();   //取得最后一项

alert(item);           // "green"

alert(colors.length);   //  1

队列方法:

结合使用shift()和push()方法,可以像使用队列一样使用数组:

var colors=new Array();

var count=colors.push("red","green");  //推入两项

alert(count);   //2

count=  colors.push("black");  // 从数组末端添加项,此时数组的顺序是: "red", "green" ,"black"

alert(count);  //3

var item=colors.shift();   // 取得第一项

alert(item);   // "red"

alert(colors.length);  //2

从例子中可以看出:

shift()方法:移除数组中的第一项并返回该项

push()方法:从数组末端添加项

若是想实现相反的操作的话,可以使用

unshift()方法:在数组的前端添加项

pop()方法:从数组末端移除项

var colors=new Array();

var count=colors.unshift("red","green");// 推入两项

alert(count);  // 2

count=colors.unshift("black");  // 从数组的前端添加项,此时数组的顺序是: "black", "red", "green"

alert(count);  //3

var item=colors.pop();

alert(item);    // 移除并返回的是最后一项   "green"

由以上的两组例子,大家可以清晰的看到这两组方法的用法了。

以上是关于数组的pop,push,shift,unshift()分别是啥?的主要内容,如果未能解决你的问题,请参考以下文章

修改数组数据头和尾push()pop()和unshift()shift()

js中push(),pop(),unshift(),shift()的用法小结

js中push(),pop(),unshift(),shift()的用法小结

Perl 数组应用详解(push, pop, shift, unshift)

数组中shift(),push(),unshift(),pop()方法

数组的方法push、pop、unshift、shift、delete、splice