JavaScript中常见的数组操做函数及用法javascript
昨天写了个帖子,汇总了下常见的JavaScript中的字符串操做函数及用法。今天正好有时间,也去把JavaScript中常见的数组操做函数及用法总结一下,这样方便你们准备参考。若是刚好你也在准备各类笔试,但愿对你有所帮助。同时,也欢迎补充。java
一、数组建立数组
建立数组应该是最简单的了,有用数组字面量建立和数组构造函数两种方法,见下:函数
var array1 = new Array(); var array2 = [];
上面是建立数组的最多见的两种方法,其中第二种方法由于简单直观而被开发者推崇。其中,使用构造函数建立数组一样能够接收用于存放于数组的值,如:编码
var array3 = new Array("num1","num2","num3");//["num1", "num2", "num3"]
一样,若是你传给构造函数的值是一个number,则该number若是大于0,则将是这个新建立数组的长度,如:3d
var array4 = new Array(5); array4.length;//5
一样的效果下,咱们仍是推荐使用字面量的形式建立数组。blog
二、数组检测排序
有两种能够检测数组的方式,第一种使用instanceof,以下:ip
var array5 = []; array5 instanceof Array;//true
同时,Array也自带了isArray()的方法,以下:开发
var array6 = []; Array.isArray(array6 );//true
三、获取数组长度
数组长度能够经过.length获取,以下:
var array7 = [1,2,3,4]; array7.length;//4
同时,数组的长度你也能够随时设置,若是设置的长度超过以前的,则后面的内容会自动补充维undefined,不然会截取有效长度的内容,以下:
var array8 = [1,2,3,4,5]; console.log(array8.length);//5 array8.length = 8; array8;//[1, 2, 3, 4, 5, undefined × 3] array8.length = 3; array8;//[1,2,3]
四、获取或者设置数组值
咱们能够获取和设置数组的值,这里须要记住的是数组的下标是从0开始的,以下:
var array9 = [1,2,3,4,5,6]; array9[2];//3 array9[2] = 4; array9[2];//4
五、数组字符串转换
数组转换为字符串能够调用数组自带的toString()方法,返回数组的字符串形式,以下:
var array10 = [1,2,3,4]; array10.toString();//"1,2,3,4"
另外,数组也有另一个很是有用的函数join(),它接受一个字符串参数,用于插在数组各项之间造成字符串,以下:
var array11 = [1,2,3,4]; array11.join("||");//"1||2||3||4"
六、数组添加和删除项
前面讲过,咱们能够设置length自动给数组添加一些undefined的值。同时,咱们也能够经过访问一个超过数组原本的长度的数字下标以给数组添加项,如:
var array12 = [1,2,3,4]; array12[5] = 5; array12[6] = 6; array12;//[1, 2, 3, 4, undefined × 1, 5, 6]
另外,咱们也能够经过push()给数组添加新的元素,以下:
var array13 = [1,2,3,4]; array13.push(5,6); array13;//[1, 2, 3, 4, 5, 6]
与push()相对的是有一个pop()方法,用以删除数组中的项,且从数组最后一项开始,例如:
var array14 = [1,2,3,4]; array14.pop();//4 array14.pop();//3; array14;//[1, 2]
同时,咱们能够经过delete删除数组某项,可是只会删除该值,恢复默认的undefined,以下:
var array15 = [1,2,3,4,5]; delete array15[1]; array15;//[1, undefined × 1, 3, 4, 5]
另外两个很是有用的方法shift()和unshift(),跟push()和pop()方法相似,其中,shift()方法用以从数组起始位置开始删除元素且返回被删除的元素,以下:
var array16 = [1,2,4,5,6]; array16.shift();//1 array16;[2,4,5,6]
而unshift()与shift()相反,用于向数组起始位置添加元素,而且数组的原来元素分别后移,以下:
var array17 = [1,2,3,4]; array17.unshift(2);//返回数组长度5,下同 array17.unshift(3); array17.unshift(4); array17;//[4, 3, 2, 1, 2, 3, 4]
七、数组翻转和排序
咱们能够对一个数组进行翻转,也可让一个数组进行排序,以下:
var array18 = [21,14,54,35,23,44,103]; array18.reverse();//[103, 44, 23, 35, 54, 14, 21] array18.sort();//[103, 14, 21, 23, 35, 44, 54]
注意,数组默认排序并非大小,而是按照对应字符串逐个编码排序的。你能够经过给sort()传递一个比较函数,类改变规则,以下:
var array18 = [21,14,54,35,23,44,103]; array18.reverse();//[103, 44, 23, 35, 54, 14, 21] array18.sort(function(a,b){return a - b;});//[14, 21, 23, 35, 44, 54, 103]
八、数组链接
咱们能够把不一样的数组链接到一块儿,以下:
var array19 = [1,2,3]; var array20 = [4,5]; var array21 = array19.concat(array20);//[1, 2, 3, 4, 5]
注意原数组都没有也不会发生改变。
九、数组分割
咱们一样能够经过slice()把数组进行分割,它接受一个参数的话表示分割的起始位置,接受第二个可选的参数是表示结束的位置,以下:
var array22 = [1,2,3,4,5,6]; var array23 = array22.slice(4);//5,6 var array24 = array22.slice(2,4);//3,4
注意,分割的数组包含slice()的起始位置而不包含结束位置。
十、最强大的splice()
如今,该讲讲最强大的splice()函数了,它接受三个参数,可实现添加、删除、修改等不一样的功能。看下w3school上它的语法,以下:
①添加元素
var array25 = [1,2,3,4,5,6]; array25.splice(2,0,88,77);//[] 返回被删除的元素,这里没有删除,返回为空 array25;//[1, 2, 88, 77, 3, 4, 5, 6]
②修改元素
var array26 = [1,2,3,4,5,6,7]; array26.splice(2,2,33,44);//[3,4] array26;//[1, 2, 33, 44, 5, 6, 7]
③删除元素
var array27 = [1,2,3,4,5,6,7]; array27.splice(2,2);//[3, 4] array27;//[1, 2, 5, 6, 7]
结束语
匆匆总结了下,不知道有没有漏下什么关键的函数或者方法,但愿你们能够给予补充!