资源描述:
《javascript数组array方法解读_基础知识》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Javascript数组Array方法解读接上一篇《Javascript数组Array基础介绍》,这一篇详细介绍Array的所有方法。所冇数组的方法都定义在Array,prototype上,而Array,prototype本身也是一个数组。array.concat()浅复制一份当前数组,并把接收到的参数附加到新数组的末尾。原数组不改变。语法array,concat(valuel,value2,...,valueN)参数为需要合并的数组或非数组值vararrl二[1,2,3];varobj二{animal:'monkey'};vararr2=arrl.concat([4,5,6],obj,[
2、7,&9]);//arrl[1,2,3]//arr2[1,2,3,4,5,6,{animal:'monkey'},7,&9]obj.animal二'tiger';//[1,2,3,4,5,6,{animal:'tiger'},7,&9]可以合并数组或非数组值,但是要注意如果包含对象,对象还是引用原来的对象。array.join()返回一个将数组所有元索用分隔符拼接成的字符串,默认分隔符为逗号。语法array.join(scpcrator)参数为分割符vararrl二[1,2,3];varstr=arrl・join();//1,2,3str=arrl.join(,ttf);//1#2#3当将
3、大量字符串片段组装时,join方法比+元素运算符要快。利用newArray(3)将生成一个长度为三的空数组,同时结合join()方法,可以实现重复某段字符串。varstr二newArray(3).join-;//-+-+重复的次数就是数组长度减一,因为字符吊是分隔符。由于数组本身是对象,拥有toStringO方法,利用它也能实现将数组拼接成一个字符串,只不过分隔符只能是逗号了。vararrl二[1,2,3];arrl.toStringO;//1,2,3实际上它会先调用每一个元素的toString()方法。array.push()把一个或多个参数附加在数组末尾,返回数组长度。改变数组口身。语
4、法array,push(valuel,value2,...,valueN);实例vararrl二[1,2,3];varlen二arrl.push(4,5);consolc.1og(lcn);//5console,log(arrl);//[1,2,3,4,5]另一种方法也可以实现在数组末尾插入值。arrl[arrl.length]=6;//[1,2,3,4,5,6]array.pop()将数组最后一项删除,并返回删除项。改变数组口身。vararrl二[1,2,3];arr.pop();//[1,2]返回3如果数组为空,返回undefinedoarray.unshift()把一个或多个参数插入
5、到数组头部,返冋数组长度。改变数组自身。vararrl二[1,2,3];varlcn二arr1.unshift(4,5);console,log(len);//5console,log(arrl);//[4,5,1,2,3]array.shift()将数组的第一项删除,并返回删除项。改变数组自身。vararr1二[1,2,3];arr.shift();//[2,3]返回1如果数组为空,返回undefinedoarray.sort()这个方法按照毎个元素的toString()方法返冋的值进行排序,所以一般得不到期望的结果。vararrl=[1,2,3,14,24];arrl.sort();/
6、/[1,14,2,24,3]但是sort()方法可以接收一个我们自定义的函数进行比较。比较函数接受两个参数,尤其sort()默认是升序,所以如果想让第一个参数位于第二个参数前面就要返回负数,相等返回0,位于后面返回正数。varcompare=function(a,b){returna-b;}vararr2=[1,12,2,23,3,5,4];arr2.sort(compare);//[1,2,3,4,5,12,23]比较字符串可以结合string.localeCompare()方法来用。vararr3二LF,e,f,E」;arr3.sort(function(a,b){returna.lo
7、caleCompare(b);});//mmarray.reverse()反转数组元素顺序,返冋数组自身。vararrl=[1,4,3,2];arrl.reverse();//[2,3,4,1]array.slice()对数组浅复制其屮的一段,不改变数组自身。array.siice(start,end);方法接受两个参数,最后一个可以省略,默认是数组自身长度。vararrl=[1,2,3,4,5,6];arrl.slic