JS数组pop/push,shift/unshift方法

Posted

tags:

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

参考技术A 队列是常见的使用数组方法之一。在计算机科学中,这表示支持两个操作的一个有序元素的集合:

push 在末端添加一个元素。

shift 取出队列首端的一个元素,整个队列往前移,这样原先排第二的元素现在排在了第一。

这两种操作数组都支持。

队列的应用在实践中经常碰到。例如需要在屏幕上显示消息队列。

数组还有另外一个用例,就是数据结构 栈 。

栈支持两种操作:

push 在末端添加一个元素。

pop 从末端取出一个元素。

所以新元素的添加和取出都是从“末端”开始的。

栈通常被形容成一叠卡片:要么在最上面添加卡片,要么从最上面拿走卡片:

对于栈来说,最后放进去的内容是最先接收的,也叫做 LIFO (Last-In-First-Out) ,即后进先出法则。而与队列相对应的 FIFO (First-In-First-Out) ,即先进先出。

javascriptt 中的数组既可以用作队列,也可以用作栈。它们允许你从 首端/末端 来 添加/删除 元素。

在计算机科学中,允许这样操作的数据结构被称为 双端队列。

pop

//取出并返回数组的最后一个元素:

push

//在数组末端添加元素:

调用 fruits.push(...)   与 fruits[fruits.length] = ... 是一样的。

shift

//取出数组的第一个元素并返回它:

unshift

//在数组的首端添加元素:

push 和 unshift 方法都可以一次添加多个元素:

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

1、push()、pop()和unshift()、shift()

  这两组同为对数组的操作,并且会改变数组的本身的长度及内容。

  不同的是 push()、pop() 是从数组的尾部进行增减,unshift()、shift() 是从数组的头部进行增减。

 var arr = [1, 2];

2、push()和unshift()

  向数组的 尾部/头部 添加若干元素,并返回 数组的 新长度

  arr.push(3,4);         //返回 arr 的新长度 4

  arr ;                        // arr = [1,2,3,4];

  arr.unshift(0,0.5);    // 返回 arr 的新长度 6

  arr ;                       // arr = [0,0.5,1,2,3,4];

3、pop()和shift()

  从数组的 尾部/头部 删除1个元素(删且只删除1个),并返回 被删除的元素;空数组是继续删除,不报错,但返回undefined;

  arr.pop();      //返回 4;

  arr ;          // arr = [0,0.5,1,2,3];

  arr.pop();      //返回 3;

  arr ;         // arr = [0,0.5,1,2];

  arr.shift();      // 返回 0 ;

  arr ;        // arr = [0.5,1,2]

  PS: pop()和shift() 不接受传参,即使传了参数也没什么卵用~~;

  arr.pop(3) ;           // 返回 2;永远返回最后一个;

  arr ;        // arr = [0.5,1];

  arr.shift(1);    // 返回 0.5; 永远返回第一个;

  arr ;        // arr = [1];

  arr.pop() ;     // 返回 1;

  arr ;        // arr = [];

  arr.shift()     // 返回 undefined;

  arr ;        // arr = [];

以上是关于JS数组pop/push,shift/unshift方法的主要内容,如果未能解决你的问题,请参考以下文章

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

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

原生JS数组方法实现(一)————push()unshift()pop()和shift()

js 的数组怎么push一个对象. Js数组的操作push,pop,shift,unshift JavaScrip

push()shift()与pop()unshift()splice()

java数组方法pop() push() unshift() shift()