flex array操作

<?xml version="1.0"?>
<!-- textcontrols/StyleSheetExample.mxml -->
<s:Application 
	xmlns:fx="http://ns.adobe.com/mxml/2009"    
	xmlns:mx="library://ns.adobe.com/flex/mx"     
	xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="init()">
	
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import mx.controls.Button;
			import mx.controls.Label;
			
			public function init():void{	
				//ref link: http://livedocs.adobe.com/flex/3/html/help.html?content=10_Lists_of_data_3.html				
				var array:Array=new Array();
				
				var theLabel:Label=new Label();				
				theLabel.text="aa";
				array.push({name: "aaa", label:theLabel});
				
				theLabel=new Label();				
				theLabel.text="dd";
				array.push({name: "ddd", label:theLabel});

				theLabel=new Label();				
				theLabel.text="cc";
				array.push({name: "ccc", label:theLabel});
				
				
				//get array length
				trace("length="+array.length);
				
				trace("===test iterate===");
				//iterate array
				for (var i:int = 0; i < array.length; ++i){
					trace(array[i].name);
				}
				
				//sort array
				trace("===test sort===");
				array.sortOn("name");
				for (var i:int = 0; i < array.length; ++i){
					trace(array[i].name);
				}
				
				//get index by key
				trace("===test search key===");
				var search:String="ccc";
				for (var i:int = 0; i < array.length; ++i){
					if(array[i].name==search){
						trace(i);
						break;
					}
				}
				
				//insert element to 0 and 1 element之间
				trace("===test insert===");
				theLabel=new Label();				
				theLabel.text="bb";
				array.splice(1,0,{name: "bbb", label:theLabel});
				for (var i:int = 0; i < array.length; ++i){
					trace(array[i].name);
				}
				
				//delete element (不能使用 "delete array[2]"代码,因为这只会把array[2] element变成undefine,而不会remove it from array 
				trace("===test delete===");
				array.splice(2,1); //delete 第3个element,如果是array.splice(2,2),则是delete第3和4个element
				for (var i:int = 0; i < array.length; ++i){
					trace(array[i].name);
				}
				trace(Label(array[1].label).text);
				
			}
		]]>
	</fx:Script>	
</s:Application>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值