`
xylw
  • 浏览: 57650 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
文章分类
社区版块
存档分类
最新评论

JS shift、unshift、 push、pop用法--JavaScript参考手册

阅读更多
shift()定义和用法

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

语法

arrayObject.shift()
返回值

数组原来的第一个元素的值。

说明

如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。请注意,该方法不创建新数组,而是直接修改原有的 arrayObject。

提示和注释

注释:该方法会改变数组的长度。

提示:要删除并返回数组的最后一个元素,请使用 pop() 方法。

实例

在本例中,我们将创建一个数组,并删除数组的第一个元素。请注意,这也将改变数组的长度:

<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr + "<br />")
document.write(arr.shift() + "<br />")
document.write(arr)

</script>
输出:

George,John,Thomas
George
John,Thomas


unshift()定义和用法

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

语法

arrayObject.unshift(newelement1,newelement2,....,newelementX)
参数 描述
newelement1 必需。向数组添加的第一个元素。
newelement2 可选。向数组添加的第二个元素。
newelementX 可选。可添加若干个元素。
返回值

arrayObject 的新长度。

说明

unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。

请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组。

提示和注释

注释:该方法会改变数组的长度。

注释:unshift() 方法无法在 Internet Explorer 中正确地工作!

提示:要把一个或多个元素添加到数组的尾部,请使用 push() 方法。

实例

在本例中,我们将创建一个数组,并把一个元素添加到数组的开头,并返回数组的新长度:

<script type="text/javascript">

var arr = new Array()
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr + "<br />")
document.write(arr.unshift("William") + "<br />")
document.write(arr)

</script>
输出:

George,John,Thomas
4
William,George,John,Thomas


push() 定义和用法

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

语法

arrayObject.push(newelement1,newelement2,....,newelementX)
参数 描述
newelement1 必需。要添加到数组的第一个元素。
newelement2 可选。要添加到数组的第二个元素。
newelementX 可选。可添加多个元素。
返回值

把指定的值添加到数组后的新长度。

说明

push() 方法可把它的参数顺序添加到 arrayObject 的尾部。它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 pop() 方法使用数组提供的先进后出栈的功能。

提示和注释

注释:该方法会改变数组的长度。

提示:要想数组的开头添加一个或多个元素,请使用 unshift() 方法。

实例

在本例中,我们将创建一个数组,并通过添加一个元素来改变其长度:

<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr + "<br />")
document.write(arr.push("James") + "<br />")
document.write(arr)

</script>
输出:

George,John,Thomas
4
George,John,Thomas,James



pop() 定义和用法
pop() 方法用于删除并返回数组的最后一个元素。
语法
arrayObject.pop()
返回值
arrayObject 的最后一个元素。
说明
pop() 方法将删除 arrayObject 的最后一个元素,把数组长度减 1,并且返回它删除的元素的值。如果数组已经为空,则 pop() 不改变数组,并返回 undefined 值。
实例
在本例中,我们将创建一个数组,然后删除数组的最后一个元素。请注意,这也会改变数组的程度:
<script type="text/javascript">

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"

document.write(arr)

document.write("<br />")

document.write(arr.pop())

document.write("<br />")

document.write(arr)

</script>
输出:
George,John,Thomas
Thomas
George,John


總結
--------------------------------------------------------
pop()VSshift()
pop()
定义
该方法将删除数组的最后一个元素,并把数组长度减1,并且返回它删除的元素的值。如果数组已经为空,则pop()不改变数组,并返回undefined。

语法
arrayObject.pop()

shift()
定义
该方法将删除数组的第一个元素,并把数组长度减1,并且返回它删除的元素的值。如果数组已经为空,则shift()不改变数组,并返回undefined。

语法
arrayObject.shift()



push()VSunshift()
push()
定义
该方法可把它的参数顺序添加到数组的尾部。它直接修改了数组,而不是创建一个新的数组。(该方法与pop()结合提供先进后出的栈功能。)

语法
arrayObject.push(newelement1,newelement2,….,newelementX)

unshift()
定义
该方法可把它的参数顺序添加到数组的头部。它直接修改了数组,而不是创建一个新的数组。

语法
arrayObject.unshift(newelement1,newelement2,….,newelementX)

unshift()在IE6,IE7下,数据有添加成功,但返回值却是undefined
分享到:
评论

相关推荐

    JavaScript数组函数unshift、shift、pop、push使用实例

    主要介绍了JavaScript数组函数unshift、shift、pop、push使用实例,本文先是讲解了声明数组的方法,然后对4个函数使用给出了一些例子,需要的朋友可以参考下

    【JavaScript源代码】Vue中v-for更新检测的操作方法.docx

    Vue中v-for更新检测的操作方法  口诀:  数组变更方法,就会导致 v-for 更新,页面更新 数组非变更方法:返回新数组,就不会导致 v-for 更新,更新值检测不到可采用覆盖或者 this.$set()  数组变更方法如下: ...

    javascript-arrays-lab-js-intro-000

    我们要的是行动发生变异区分(“变”)的基础结构(如pop() push() shift()和unshift()和那些离开这些结构不变的功能。 通常,最好避免在可能的情况下更改程序的状态。 因此,我们希望将这些方法称为破坏性方法,...

    javascript语言参考+教程 CHM

    unshift 方法; UTC 方法; valueOf 方法; JScript 对象; ActiveXObject 对象; Array 对象; Boolean 对象; Date 对象; Enumerator 对象; Error 对象; Function 对象; Global 对象; Math 对象; Number ...

    微软JavaScript手册

    欢迎使用 JScript 语言参考 这些方便实用的信息将帮助您了解 JScript 的各个部分。 在“字母顺序的关键字列表”中,可以找到按字母顺序列出的所有 JScript 语言的主题。如果只需要查看某个主题(例如对象),则有对...

    JavaScript权威指南

    JavaScript权威指南 犀牛书 Chapter 1. Introduction to JavaScript Section 1.1. JavaScript Myths Section 1.2. Versions of JavaScript Section 1.3. Client-Side JavaScript Section 1.4. JavaScript ...

    pop-swap:数组和数组(如 JavaScript 对象)的范围内容更改运算符

    push(...values): splice(length, 0, ...values) shift(): splice(0, 1)[0] unshift(...values): splice(0, 0, ...values) clear(): splice(0, length) Splice 总是返回一个已删除值的数组,这对于对所有这些方法...

    JavaScript面试题

    JavaScript 是全球最流行的编程语言。 本文件整理了前端面试中的面试题。 1.请说一下数组常用的方法有哪些? push():添加到数组的最后 splice():删除指定的元素,并且在删除的位置添加元素 Sting()、toString():将...

    javascript中活灵活现的Array对象详解

    大家都知道Array实例有这四个方法:push、pop、shift、unshift。大家也都知道 push + pop实现栈, shift + push实现队列。在这里不讨论什么先进后出、先进先出。 但一面这个题将要用到这几个方法。 题目 螺旋矩阵这...

    javascript-arrays-lab-bootcamp-prep-000

    我们要的是行动发生变异区分(“变”)的基础结构(如pop() push() shift()和unshift()和那些离开这些结构不变的功能。 通常,最好避免在可能的情况下更改程序的状态。 因此,我们希望将这些方法称为破坏性方法,...

    FrontendLearningIntegration:记录前端学习历程,沉下心,别急,都会好起来的

    check_mark:9.19正则表达式:check_mark:\s 表示空格9.19链表相关:check_mark:链表的反转9.20递归:check_mark:递归思想9.21栈和队列:check_mark:shift unshift push pop9.22二分查找:check_mark:9.22动态规划 递归 ...

    Javascript数组操作函数总结

    其实平时用的比较多的应该是push和pop,不过还是都记下来,以便后面使用。 shift :删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined 代码如下: var a = [1,2,3,4,5]; var b = a.shift(); //a...

    learn-enough-[removed]《学习足够JavaScript来避免危险》一书中的示例代码

    vs === ==字符串比较===做价值比较有用的库数学日期本机数据结构大批添加/删除到最后push pop到前面来shift unshift 目的 访问属性objectName.propName objectName['propName'] 地图 添加/访问键/值对mapName.set(...

    Javascript数组及类数组相关原理详解

    数组创建方式有两种 1. var arr = [] 2. var arr = new Array() 如果只有一个参数会指定...改变原数组 push pop shift unshift sort reverse splice 不改变原数组 concat join —&gt; split toString slice 比如 push 函数

    fewpjs-js-fundamentals-arrays-lab-rcdd_202103_irq_few

    我们将使用会改变(“更改”)其底层结构(如pop() , push() , shift()和unshift() )的动作。 通常,最好避免在可能的情况下更改程序的状态。 但是,到目前为止,我们将专注于使用Array的基础知识。 运行learn ...

    js-data-structures-arrays-lab-v-000

    我们要的是行动发生变异区分(“变”)的基础结构(如pop() push() shift()和unshift()和那些离开这些结构不变的功能。 通常,最好避免在可能的情况下更改程序的状态。 因此,我们希望将这些方法称为破坏性方法,...

    idempotent.js:JavaScript 的幂等操作

    无论是通过调用sort 、 push / pop / shift / unshift 、 reverse 、修改内部结构的自定义方法,还是等效于obj.property = 'foo ; 它们都修改了内部值。 但是,修改值会产生很难推理的代码。 但是,有时可能需要...

    perfect-immutable:在标准JS对象上提供不可变方法(如类似于lodash的_.set的不可变集)的库

    import { set , splice , push , pop , shift , unshift , sort , reverse , filter , immutableDelete } from 'perfect-immutable' ; import immu from 'perfect-immutable' ; // immu object has all above ...

    LinkedList-[removed]如何在JS中实现链接列表。 为LinkedList添加了基本功能-推送,弹出,移位,取消移位,removeDuplicates,removeSpecific

    LinkedList-Javascript 如何在JS中实现链接列表。 为LinkedList添加了基本功能 推, 流行音乐, 转移, 换挡 撤销, 删除重复项, 删除特定 例子 var ll = newlinkedlist(); ll.push(3); // ll-&gt; 3 ll....

Global site tag (gtag.js) - Google Analytics