Array的常用操作

来源:互联网 发布:小米手机全系列 知乎 编辑:程序博客网 时间:2024/04/28 08:32

原数组:var arr:Array = [1,4,2,3,2,5,9,5,7,2,8,5,3];

1.push(...p)//将若干个元素依次加到原数组的最后面

arr.push(10);

结果:arr = [1,4,2,3,2,5,9,5,7,2,8,5,3,10]

arr.push(10,11,12);

结果:arr = [1,4,2,3,2,5,9,5,7,2,8,5,3,10,11,12]

push方法实际上相当于队列,先push排在最前面,后push的

排最后面.


2.pop();//删除数组最后一个元素,并返回此元素.

var i = arr.pop();
trace(i);

结果:trace 结果为 3,arr = [1,4,2,3,2,5,9,5,7,2,8,5]


3.concat(...p)//类似于push.不过push可以改变原数组,concat则是返回一个新的数组.

var newArr:Array = arr.concat(10,11,12);

结果:newArr=[1,4,2,3,2,5,9,5,7,2,8,5,3,10,11,12],arr不变.


4.join(sep:*)//将数组中的元素转换为sep符号分割的字符串

var str:String = arr.join(";");

trace(str);

注意:arr = str.split(";");//字符串的split方法与此方法的过程正好相反.

结果:str = "1;4;2;3;2;5;9;5;7;2;8;5;3"


5.reverse();//将原数组的元素反转.

arr.reverse();//把原反转后返回新数组,也影响原数组.

结果:arr = [3,5,8,2,7,5,9,5,2,3,2,4,1]


6.shift();//删除原数组的第一个元素,并返回删除的元素;

var i = arr.shift();//数组的长度减一,并且后面的元素下标从原来的i变为i-1.
trace(i);

结果:arr = [4,2,3,2,5,9,5,7,2,8,5,3];  trace();结果为1


7.unshift()//将一个或多个元素添加到数组的开头,并返回该改变后数组长度。数组中的其他元素从其原始位置 i 移到 i+1。

var len:uint = arr.unshift(10);//直接在原数组前面添加元素,之后原数组长度改变
trace(len);

结果:原数组arr = [10,1,4,2,3,2,5,9,5,7,2,8,5,3]     trace()打印为14.


8.slice(startIndex,endIndex)//copy原数组从startIndex到endIndex(不包含)之间的元素作为新数组返回

var newArr:Array = arr.slice(1,2);//左开右闭

结果为4.//第2个元素和第3个元素之间是4.


9.splice(startIndex,delectCount)//截取从原数组startIndex开始在内的,delectCount个元素作为新数组返回.会删除截取的元素从原数组.

var newArr:Array = arr.splice(1,3);//startIndex 若为复数则表示倒数第几个元素

//原数组:var arr:Array = [1,4,2,3,2,5,9,5,7,2,8,5,3];

结果arr = [1,2,5,9,5,7,2,8,5,3],newArr = [4,2,3]

arr.splice(arr.length-1,1);  与 arr.pop();的结果一致


10.sort()//对元素按照UNICODE编码进行排序

arr.sort();//正序   结果: arr = [1,2,2,2,3,3,4,5,5,5,7,8,9]

arr.sort(Array.DESCENDING);//倒序 结果: arr = [9,8,7,5,5,5,4,3,3,2,2,2,1]

另有sortOn(filedName,options)//对数组中对象按照其字段值,以可选排序类型进行排序


以上API大部分适用javascript等语言中的数组

0 0
原创粉丝点击