js之数组方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js 数组</title> </head> <body> <script> /*数组的创建*/ var arr1=new Array();//[],length=0 arr2=new Array(10);//[],length=10 arr3=new Array([1,2,3,4,5,6,7,8,9,10]);//[Arry[10]],length=1 arr4=new Array(1,2,3,4,5,6);//[1,2,3,4,5,6],length=6 arr5=[1,2,3,4,5,6,7,8,9,10,11]//[1,2,3,4,5,6,7,8,9,10,11],length=11 /*console.log(arr1); console.log(arr2); console.log(arr3); console.log(arr4);*/ /*注意带[]和不带[]的区别*/ /*数组元素的添加*/ var arr=[1,2,3,5,6,7]; console.log(arr); var arrPush1=arr.push("1"); console.log(arr); console.log(arrPush1); var arrPushDuo=arr.push(2,3,4,5) console.log(arr); console.log(arrPushDuo); var arrUnshift=arr.unshift(1); console.log(arr); console.log(arrUnshift); var arrUnshift=arr.unshift(1,2,3,4); console.log(arr); console.log(arrUnshift); var arrSplice=arr.splice(3,2,"1","2","3","4","5","6"); console.log(arr); console.log(arrSplice); /* 数组添加总结: push(),从尾部添加,修改原数组,返回新数组长度; unshift(),从头部添加,修改原数组,返回新数组长度; splice(star,num,ele0……),从star添加,先删除原数组的num个元素,ele0从star位置往后添加,返回数组,数组元素为原数组中被删除的元素 */ /*数组元素的删除*/ var arr=[1,2,3,5,6,7]; console.log(arr); var arrPop1=arr.pop(); console.log(arr); console.log(arrPop1); var arrShift=arr.shift(); console.log(arr); console.log(arrShift); var arrSplice=arr.splice(3,2); console.log(arr); console.log(arrSplice); /* 数组删除总结: pop()|shift(),从数组头|数组尾删除一个数组元素,返回被删除的数组元素 splice(star,num,ele0……),从star添加,先删除原数组的num个元素 */ /*数组元素的截取和合并*/ var arr=[1,2,3,5,6,7]; console.log(arr); var arrSlice1=arr.slice(1,5); console.log(arr); console.log(arrSlice1); var arrSlice2=arr.slice(-5,-1); console.log(arr); console.log(arrSlice2); var arrSlice3=arr.slice(0); console.log(arr); console.log(arrSlice3); var arrConcat=arr.concat(); console.log(arr); console.log(arrConcat); var arrConcat1=arr.concat([1,2,3]); console.log(arr); console.log(arrConcat1); var arrConcat2=arr.concat([1,[2,3,4],3]); console.log(arr); console.log(arrConcat2); /* 数组截取和合并总结: slice(start,end),从原数组中的start位置开始,截取至end位置,但不包括end位置,即截取区间为[start,end),不改变原数组,返回值为截取的新数组。 ps:若没有end,则从start位置直至最后一位元素。当start为0时,相当于创建数组的副本 concat([elem0,elem1……])|concat(ele0,elem1……)|concat() concat()相当于创建原数组的副本; concat([elem0,elem1……])|concat(ele0,elem1……),在原数组的尾部追加elem0……,在追加时,会将传入的数组参数拆分,但是只拆分一层数组元素 */ /*数组字符串化*/ var arr=[1,2,3,5,6,7]; console.log(arr); console.log(arr.join("")); console.log(arr.join("|")); console.log(arr.join(";")); /*ps 字符串数组化*/ var str="hello,world!"; console.log(str.split("")); </script> </body> </html>
js数组方法总结:
1 创建 ……
2 添加
push()|unshift() 从数组尾部|头部添加一或多个数组元素,返回值为新数组的长度,改变原数组
splice(start,num,elem0……) 从数组的start位置开始,删除num个原数组元素,添加elem0……,返回值为被删除的原数组元素,改变原数组
3 删除
pop()|shift() 从数组的尾部|头部删除一个数组元素,返回值是被删除的数组元素,返回值不是数组的形式,改变原数组
splice(start,num,elem0……) 从数组的start位置开始,删除num个原数组元素
4 截取|合并|拷贝
slice(start,end) 从数组的start位置开始,至end位置结束,截取此区间的原数组元素,[start,end),半闭合区间。start,end都可为负数,负数是指从数组尾部算起,最后一个元素为-1。若不指定end,则指从start位置开始直至数组尾部。若start为0,则为创建原数组副本。不改变原数组,返回值为数组,数组元素为从原数组截取的部分元素。
concat([elem0……])|concat(elem0……)|concat(0) 不改变原数组,返回值为数组,数组元素为原数组和concat中参数合并后的新数组
concat()相当于创建原数组的副本;
concat([elem0,elem1……])|concat(ele0,elem1……) 在原数组的尾部追加elem0……,在追加时,会将传入的数组参数拆分,但是只拆分一层数组元素
5 数组字符串化
join("sign") 不改变原数组。返回值为字符串,以sign分隔的数组元素的字符串表示。默认为“;”
6 字符串数组化
str.split("")
2015-08-12日补充
7 数组排序
sort() 数组元素按照顺序排列
reverse() 翻转