[AS3]as3的数组排序添加删除用法
添加元素
push(元素1,元素2,元素3,…)//尾部添加
unshift(元素1,元素2,元素3,…)//首部添加
返回添加后数组的长度
var arr:Array=[1,2,3];
arr.push(4,5,6);//[1,2,3,4,5,6]
arr.unshift(7,8,9);//[7,8,9,1,2,3,4,5,6]
删除
pop()//删尾部
shift()//删首部
返回被删除的元素
splice操作,可以改变数组---添加或删除数组
数组.splice(删除点的索引,要删除的元素数目,新元素1,新元素2,…,新元素n);
返回值是也是一个数组,包含被删除的元素
var arr:Array=[0,1,2,3];
trace(arr.splice(1,2,5,6));//1,2 trace(arr);//0,5,6,3
纯粹的删除
var arr:Array=[0,1,2,3];
arr.splice(1);
trace(arr);//0
或者
var arr:Array=[0,1,2,3];
arr.splice(1,2);
trace(arr);//0,3
纯粹的添加
var arr:Array=[0,1,2,3];
arr.splice(1,0,4,5,6);
trace(arr);//0,4,5,6,1,4
slice操作,获取数组中部分元素
ps:slice不会改变原数组的内容
索引,
负值索引:-1表示最后一个元素,-2表示倒数第二个
var arr:Array=[0,1,2,3];
trace(arr.slice(1,3));//1,2
trace(arr.slice(1));//1,2,3
trace(arr.slice(1,-1));//1,2
排序
- //逆序
- var arr:Array=[1,3,2];
- trace(arr.reverse());//2,3,1
- trace(arr);//1,3,2 //从小到大(默认)
- var arr:Array=[1,3,2];
- arr.sort();
- trace(arr);//1,2,3 //从大到小
- var arr:Array=[1,3,2];
- arr.sort(Array.DESCENDING);
- trace(arr);//3,2,1 自定义排序函数
- function compare(obj1:Object,obj2:Object):int{
- if(obj1.age>obj2.age){//大于 return 1;
- }else if(obj1.age<obj2.age){//小于 return -1;
- }else{//等于 return 0;
- }
- }
- var obj1:Object={age:35,name:"迈克"};
- var obj2:Object={age:10,name:"乔治"};
- var obj3:Object={age:20,name:"莱特"};
- var arr:Array=[obj1,obj2,obj3];
- arr.sort(compare); for each(var obj:Object in arr){
- trace(obj.name+":"+obj.age);
- }
- CuPlayer.com提示:结果:
- 乔治:10
- 莱特:20
- 迈克:35
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例