flex array操作

来源:互联网 发布:linux进入文件夹 编辑:程序博客网 时间:2024/05/29 15:36
<?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.htmlvar 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 lengthtrace("length="+array.length);trace("===test iterate===");//iterate arrayfor (var i:int = 0; i < array.length; ++i){trace(array[i].name);}//sort arraytrace("===test sort===");array.sortOn("name");for (var i:int = 0; i < array.length; ++i){trace(array[i].name);}//get index by keytrace("===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个elementfor (var i:int = 0; i < array.length; ++i){trace(array[i].name);}trace(Label(array[1].label).text);}]]></fx:Script></s:Application>

原创粉丝点击