下面小编就为大家带来一篇JavaScript基础进阶之数组方法总结(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
数组常用方法总结:
下面我只总结了es3中常用的数组方法,一共有11个。es5中新增的9个数组方法,后续再单独总结。
1个连接数组的方法:concat()
2个数组转换为字符串的方法:join()、toString()
6个增删数组元素的方法:pop()、push()、shift()、unshift()、slice()、splice()
2个数组排序方法:reverse()、sort()
连接数组的方法:
1、concat()
作用:连接两个数组,合并为一个新数组。
用法:arr1.concat(arr2,arr2...)
示例:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(3) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = "Martin" document.write(arr.concat(arr2)) </script>
输出:
George,John,Thomas,James,Adrew,Martin
数组转换为字符串的方法:
1、join()
作用:用于把数组中的所有元素放入一个字符串。并通过指定的分隔符进行分隔。
用法:arrayObject.join(separator)
示例:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr.join(".")) </script>
输出:
George.John.Thomas
注意:返回值为一个字符串。如果没有分隔符,默认以逗号分隔。
2、toString()
作用:把数组转换为字符串,并返回结果。
用法:arrayObject.toString()
示例:
<script type="text/javascript"> var arr = new Array(3) arr[0] = "George"; arr[1] = "John"; arr[2] = "Thomas"; document.write(arr.toString()); </script>
输出:
George,John,Thomas
返回值与没有参数的 join() 方法返回的字符串相同。数组中的元素之间用逗号分隔。
增删数组元素的方法:
1、pop()
作用:用于删除并返回数组的最后一个元素。
用法:arrayObject.pop()
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
2、push()
作用:可向数组的末尾添加一个或多个元素,并返回新的长度。
用法:arrayObject.push(newelement1,newelement2,....,newelementX)
它直接修改 arrayObject,而不是创建一个新的数组。push() 方法和 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.push("James") + "<br />") document.write(arr) </script>
输出:
George,John,Thomas 4 George,John,Thomas,James
3、shift()
作用:用于把数组的第一个元素从其中删除,并返回第一个元素的值。
用法:arrayObject.shift()
如果数组是空的,那么 shift() 方法将不进行任何操作,返回 undefined 值。请注意,该方法不创建新数组,而是直接修改原有的 arrayObject。
示例:
<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
4,unshift()
作用:可向数组的开头添加一个或更多元素,并返回新的长度。
用法:arrayObject.unshift(newelement1,newelement2,....,newelementX)
unshift() 方法将把它的参数插入 arrayObject 的头部,并将已经存在的元素顺次地移到较高的下标处,以便留出空间。该方法的第一个参数将成为数组的新元素 0,如果还有第二个参数,它将成为新的元素 1,以此类推。
请注意,unshift() 方法不创建新的创建,而是直接修改原有的数组。unshift() 方法无法在 Internet Explorer 中正确地工作!
示例:
<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
5,slice()
作用:可从已有的数组中返回选定的元素。
用法:arrayObject.slice(start,end)
start |
必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。 |
end |
可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。 |
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
该方法并不会修改数组,而是返回一个子数组。如果想删除数组中的一段元素,应该使用方法 Array.splice()。
<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.slice(1) + "<br />") document.write(arr) </script>
输出:
George,John,Thomas John,Thomas George,John,Thomas
6,splice()
作用:向/从数组中添加/删除项目,然后返回被删除的项目。
用法:arrayObject.splice(index,howmany,item1,.....,itemX)
index |
必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 |
howmany |
必需。要删除的项目数量。如果设置为 0,则不会删除项目。 |
item1, ..., itemX |
可选。向数组添加的新项目。 |
该方法会改变原始数组。
示例:
<script type="text/javascript"> var arr = new Array(6) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" arr[3] = "James" arr[4] = "Adrew" arr[5] = "Martin" document.write(arr + "<br />")arr.splice(2,0,"William") document.write(arr + "<br />") </script>
输出:
George,John,Thomas,James,Adrew,Martin George,John,William,Thomas,James,Adrew,Martin
数组元素排序:
1、reverse()
作用:用于颠倒数组中元素的顺序。
用法:arrayObject.reverse()
该方法会改变原来的数组,而不会创建新的数组。
示例:
<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.reverse()) </script>
输出:
George,John,Thomas Thomas,John,George
2,sort()
作用:用于对数组的元素进行排序。
用法:arrayObject.sort(sortby)
Sortby:可选,按规定是顺序排序。必须是函数。
相对于其他方法来说复杂了一点。
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。
如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
<script type="text/javascript"> function sortNumber(a,b) { return a - b } var arr = new Array(6) arr[0] = "10" arr[1] = "5" arr[2] = "40" arr[3] = "25" arr[4] = "1000" arr[5] = "1" document.write(arr + "<br />") document.write(arr.sort(sortNumber)) </script>
输出:
10,5,40,25,1000,1 1,5,10,25,40,1000
上面这个例子是让数组元素从小到大排序,如果想实现从大到小排序,只需要将sortNumber函数中的a-b改为b-a即可。
<script type="text/javascript"> function sortNumber(a,b) { return b - a; } var arr = new Array(6) arr[0] = "10" arr[1] = "5" arr[2] = "40" arr[3] = "25" arr[4] = "1000" arr[5] = "1" document.write(arr + "<br />") document.write(arr.sort(sortNumber)) </script>
输出:
10,5,40,25,1000,1 1000,40,25,10,5,1
补充:
数组对象的属性:
属性 |
描述 |
constructor |
返回对创建此对象的数组函数的引用。 |
length |
设置或返回数组中元素的数目。 |
prototype |
使您有能力向对象添加属性和方法。 |
以下这个例子展示了如何使用constructor属性
<script type="text/javascript"> var test=new Array(); if (test.constructor==Array) { document.write("This is an Array"); } if (test.constructor==Boolean) { document.write("This is a Boolean"); } if (test.constructor==Date) { document.write("This is a Date"); } if (test.constructor==String) { document.write("This is a String"); } </script>
输出:
This is an Array
length 属性可设置或返回数组中元素的数目。数组的 length 属性总是比数组中定义的最后一个元素的下标大 1。对于那些具有连续元素,而且以元素 0 开始的常规数组而言,属性 length 声明了数组中的元素的个数。设置 length 属性可改变数组的大小。如果设置的值比其当前值小,数组将被截断,其尾部的元素将丢失。如果设置的值比它的当前值大,数组将增大,新的元素被添加到数组的尾部,它们的值为 undefined。
获取数组的长度:arrayObject.length
以上是JavaScript基础进阶之数组相关介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

Python和JavaScript的主要区别在于类型系统和应用场景。1.Python使用动态类型,适合科学计算和数据分析。2.JavaScript采用弱类型,广泛用于前端和全栈开发。两者在异步编程和性能优化上各有优势,选择时应根据项目需求决定。

选择Python还是JavaScript取决于项目类型:1)数据科学和自动化任务选择Python;2)前端和全栈开发选择JavaScript。Python因其在数据处理和自动化方面的强大库而备受青睐,而JavaScript则因其在网页交互和全栈开发中的优势而不可或缺。

Python和JavaScript各有优势,选择取决于项目需求和个人偏好。1.Python易学,语法简洁,适用于数据科学和后端开发,但执行速度较慢。2.JavaScript在前端开发中无处不在,异步编程能力强,Node.js使其适用于全栈开发,但语法可能复杂且易出错。

javascriptisnotbuiltoncorc; saninterpretedlanguagethatrunsonenginesoftenwritteninc.1)javascriptwasdesignedAsalightweight,解释edganguageforwebbrowsers.2)Enginesevolvedfromsimpleterterterpretpreterterterpretertestojitcompilerers,典型地提示。

JavaScript可用于前端和后端开发。前端通过DOM操作增强用户体验,后端通过Node.js处理服务器任务。1.前端示例:改变网页文本内容。2.后端示例:创建Node.js服务器。

选择Python还是JavaScript应基于职业发展、学习曲线和生态系统:1)职业发展:Python适合数据科学和后端开发,JavaScript适合前端和全栈开发。2)学习曲线:Python语法简洁,适合初学者;JavaScript语法灵活。3)生态系统:Python有丰富的科学计算库,JavaScript有强大的前端框架。

JavaScript框架的强大之处在于简化开发、提升用户体验和应用性能。选择框架时应考虑:1.项目规模和复杂度,2.团队经验,3.生态系统和社区支持。

引言我知道你可能会觉得奇怪,JavaScript、C 和浏览器之间到底有什么关系?它们之间看似毫无关联,但实际上,它们在现代网络开发中扮演着非常重要的角色。今天我们就来深入探讨一下这三者之间的紧密联系。通过这篇文章,你将了解到JavaScript如何在浏览器中运行,C 在浏览器引擎中的作用,以及它们如何共同推动网页的渲染和交互。JavaScript与浏览器的关系我们都知道,JavaScript是前端开发的核心语言,它直接在浏览器中运行,让网页变得生动有趣。你是否曾经想过,为什么JavaScr


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境