-
<?xmlversion="1.0"encoding="utf-8"?>
-
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
-
layout="vertical"
-
verticalAlign="middle"
-
backgroundColor="white"
-
initialize="onInit()">
-
<mx:Style>
-
.greenModal{
-
modalTransparencyColor:haloGreen;
-
}
-
-
.redModal{
-
modalTransparencyColor:red;
-
}
-
</mx:Style>
-
-
-
<mx:Script>
-
<!--[CDATA[
-
importmx.controls.Alert;
-
importmx.utils.StringUtil;
-
privatevararray:Array=[{label:"AAAAA",data:5},{label:"BBBBB",data:"liu"},{label:"CCCCC",data:3},{label:"DDDDD",data:2},{label:"EEEEE",data:1}];
-
privatevarnewArray:Array=[{label:"桌子",data:123.5},{label:"电脑",data:4741}];
-
privatevararr0:Array=["AAAAA","DDDDD","YYYYY"];
-
-
privatefunctiononInit():void
-
{
-
varconcatArray:Array=array.concat(newArray);
-
}
-
-
privatefunctionconcatArray(arr1:Array,arr2:Array):void
-
{
-
vararr:Array=arr1.concat(arr2);
-
dataGrid.dataProvider=arr;
-
}
-
-
-
privatefunctionjoinArray():void
-
{
-
textArea.text=arr0.join("___/n");
-
dataGrid.dataProvider=arr0;
-
}
-
-
-
privatefunctionreverseArray():void
-
{
-
arr0.reverse();
-
dataGrid.dataProvider=arr0;
-
textArea.text=arr0.join("/n");
-
}
-
-
-
privatefunctionmapArray():void
-
{
-
varupperArray:Array=arr0.map(toUpper);
-
dataGrid.dataProvider=upperArray;
-
}
-
privatefunctiontoUpper(element:*,index:int,arr:Array):String
-
{
-
returnString(element).toLowerCase();
-
}
-
-
-
-
privatefunctionforEachArray():void
-
{
-
array.forEach(forEach);
-
dataGrid.dataProvider=array;
-
}
-
privatefunctionforEach(element:*,index:int,arr:Array):void
-
{
-
element.data=element.data+10;
-
}
-
-
-
privatefunctionsomeArray():void
-
{
-
textArea.text="";
-
varsuccess:Boolean=array.some(isNumeric);
-
dataGrid.dataProvider=array;
-
if(success)
-
{
-
Alert.show("Success.","Result",Alert.OK);
-
}
-
else
-
{
-
Alert.show("failed.","Result",Alert.OK);
-
}
-
}
-
-
-
privatefunctioncheckArray(arr:Array):void
-
{
-
textArea.text="";
-
dataGrid.dataProvider=arr;
-
-
varsuccess:Boolean=arr.every(isNumeric);
-
if(success)
-
{
-
Application.application.styleName="greenModal";
-
Alert.show("Arrayisnumeric.",
-
"SUCCESS",
-
Alert.OK,
-
null,
-
null);
-
}
-
else
-
{
-
Application.application.styleName="redModal";
-
Alert.show("Arrayhasnon-numericelements.","ERROR",Alert.OK,null,null);
-
}
-
}
-
privatefunctionisNumeric(element:Object,index:int,arr:Array):Boolean
-
{
-
if((element.hasOwnProperty("data"))&&(element.dataisNumber))
-
{
-
varstr:String=StringUtil.substitute("{0}({1})/n",element.label,element.data);
-
textArea.text+=str;
-
returntrue;
-
}elsereturnfalse;
-
-
}
-
]]-->
-
</mx:Script>
-
<mx:ApplicationControlBardock="true">
-
<mx:Buttonlabel="Concat"
-
click="concatArray(array,newArray);"/>
-
<mx:Buttonlabel="Join"
-
click="joinArray();"/>
-
<mx:Buttonlabel="Reverse"
-
click="reverseArray();"/>
-
<mx:Buttonlabel="Map"
-
click="mapArray();"/>
-
<mx:Buttonlabel="ForEach"
-
click="forEachArray();"/>
-
<mx:Buttonlabel="Some"
-
click="someArray();"/>
-
<mx:Buttonlabel="CheckArray1"
-
click="checkArray(array);"/>
-
<mx:Buttonlabel="CheckArray2"
-
click="checkArray(newArray);"/>
-
</mx:ApplicationControlBar>
-
<mx:HBox>
-
<mx:DataGridid="dataGrid"
-
rowCount="7">
-
<mx:columns>
-
<mx:DataGridColumndataField="label"/>
-
<mx:DataGridColumndataField="data"/>
-
</mx:columns>
-
</mx:DataGrid>
-
<mx:TextAreaid="textArea"
-
editable="false"
-
width="{dataGrid.width}"
-
height="{dataGrid.height}"/>
-
</mx:HBox>
-
-
-
</mx:Application>
Filter :
-
<?xmlversion="1.0"encoding="utf-8"?>
-
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
-
layout="vertical"
-
verticalAlign="middle"
-
backgroundColor="white"
-
creationComplete="init()">
-
-
<mx:Script>
-
<!--[CDATA[
-
privatevarkeys:Object={};
-
-
-
-
-
-
-
-
-
privatefunctioninit():void
-
{
-
-
-
vararr:Array=[];
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:3,label:"three"});
-
arr.push({data:3,label:"three"});
-
-
-
-
-
varfilteredArr:Array=arr.filter(removedDuplicates);
-
-
arrColl.source=arr;
-
dedupedArrColl.source=filteredArr;
-
}
-
-
-
-
-
-
-
-
-
-
-
-
privatefunctionremovedDuplicates(item:Object,idx:uint,arr:Array):Boolean
-
{
-
if(keys.hasOwnProperty(item.label))
-
{
-
-
-
returnfalse;
-
}
-
else
-
{
-
-
-
-
keys[item.label]=item;
-
returntrue;
-
}
-
}
-
]]-->
-
</mx:Script>
-
-
<mx:ArrayCollectionid="arrColl"/>
-
<mx:ArrayCollectionid="dedupedArrColl"/>
-
-
<mx:HBox>
-
<mx:VBox>
-
<mx:Labeltext="Original({arrColl.length}items):"/>
-
<mx:ListdataProvider="{arrColl}"/>
-
</mx:VBox>
-
<mx:VBox>
-
<mx:Labeltext="Filtered({dedupedArrColl.length}items):"/>
-
<mx:ListdataProvider="{dedupedArrColl}"/>
-
</mx:VBox>
-
</mx:HBox>
-
-
</mx:Application>
搜索数组元素时,可以使用for语句配合break语句
-
for(vari:int=0;i<array.length;i++)
-
{
-
if(array[i]==match)
-
{
-
trace("Elementwithindex"+i+"foundtomatch"+match);
-
break;
-
}
-
}
但上面这种方法效率不高,在ascb.util.ArrayUtilities类中,提供了findMatchIndex,findLastMatchIndex和findMatchIndices三种方法来搜索数组元素。
使用方法如下,ArrayUtilities.findMatchIndex(数组对象,需要匹配的值,搜索开始下标,布尔值);
其中搜索开始下标默认为0。布尔值表示是否返回部分匹配元素,默认为false,即不返回部分匹配元素。
findLastMatchIndex返回最后一个匹配的元素下标。findMatchIndice返回所有匹配的元素下标数组(注意:返回的结果是下标的数组)。
-
<?xmlversion="1.0"encoding="utf-8"?>
-
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
-
layout="vertical"
-
verticalAlign="middle"
-
backgroundColor="white"
-
initialize="onInit()">
-
<mx:Style>
-
.greenModal{
-
modalTransparencyColor:haloGreen;
-
}
-
-
.redModal{
-
modalTransparencyColor:red;
-
}
-
</mx:Style>
-
-
-
<mx:Script>
-
<!--[CDATA[
-
importmx.controls.Alert;
-
importmx.utils.StringUtil;
-
privatevararray:Array=[{label:"AAAAA",data:5},{label:"BBBBB",data:"liu"},{label:"CCCCC",data:3},{label:"DDDDD",data:2},{label:"EEEEE",data:1}];
-
privatevarnewArray:Array=[{label:"桌子",data:123.5},{label:"电脑",data:4741}];
-
privatevararr0:Array=["AAAAA","DDDDD","YYYYY"];
-
-
privatefunctiononInit():void
-
{
-
varconcatArray:Array=array.concat(newArray);
-
}
-
-
privatefunctionconcatArray(arr1:Array,arr2:Array):void
-
{
-
vararr:Array=arr1.concat(arr2);
-
dataGrid.dataProvider=arr;
-
}
-
-
-
privatefunctionjoinArray():void
-
{
-
textArea.text=arr0.join("___/n");
-
dataGrid.dataProvider=arr0;
-
}
-
-
-
privatefunctionreverseArray():void
-
{
-
arr0.reverse();
-
dataGrid.dataProvider=arr0;
-
textArea.text=arr0.join("/n");
-
}
-
-
-
privatefunctionmapArray():void
-
{
-
varupperArray:Array=arr0.map(toUpper);
-
dataGrid.dataProvider=upperArray;
-
}
-
privatefunctiontoUpper(element:*,index:int,arr:Array):String
-
{
-
returnString(element).toLowerCase();
-
}
-
-
-
-
privatefunctionforEachArray():void
-
{
-
array.forEach(forEach);
-
dataGrid.dataProvider=array;
-
}
-
privatefunctionforEach(element:*,index:int,arr:Array):void
-
{
-
element.data=element.data+10;
-
}
-
-
-
privatefunctionsomeArray():void
-
{
-
textArea.text="";
-
varsuccess:Boolean=array.some(isNumeric);
-
dataGrid.dataProvider=array;
-
if(success)
-
{
-
Alert.show("Success.","Result",Alert.OK);
-
}
-
else
-
{
-
Alert.show("failed.","Result",Alert.OK);
-
}
-
}
-
-
-
privatefunctioncheckArray(arr:Array):void
-
{
-
textArea.text="";
-
dataGrid.dataProvider=arr;
-
-
varsuccess:Boolean=arr.every(isNumeric);
-
if(success)
-
{
-
Application.application.styleName="greenModal";
-
Alert.show("Arrayisnumeric.",
-
"SUCCESS",
-
Alert.OK,
-
null,
-
null);
-
}
-
else
-
{
-
Application.application.styleName="redModal";
-
Alert.show("Arrayhasnon-numericelements.","ERROR",Alert.OK,null,null);
-
}
-
}
-
privatefunctionisNumeric(element:Object,index:int,arr:Array):Boolean
-
{
-
if((element.hasOwnProperty("data"))&&(element.dataisNumber))
-
{
-
varstr:String=StringUtil.substitute("{0}({1})/n",element.label,element.data);
-
textArea.text+=str;
-
returntrue;
-
}elsereturnfalse;
-
-
}
-
]]-->
-
</mx:Script>
-
<mx:ApplicationControlBardock="true">
-
<mx:Buttonlabel="Concat"
-
click="concatArray(array,newArray);"/>
-
<mx:Buttonlabel="Join"
-
click="joinArray();"/>
-
<mx:Buttonlabel="Reverse"
-
click="reverseArray();"/>
-
<mx:Buttonlabel="Map"
-
click="mapArray();"/>
-
<mx:Buttonlabel="ForEach"
-
click="forEachArray();"/>
-
<mx:Buttonlabel="Some"
-
click="someArray();"/>
-
<mx:Buttonlabel="CheckArray1"
-
click="checkArray(array);"/>
-
<mx:Buttonlabel="CheckArray2"
-
click="checkArray(newArray);"/>
-
</mx:ApplicationControlBar>
-
<mx:HBox>
-
<mx:DataGridid="dataGrid"
-
rowCount="7">
-
<mx:columns>
-
<mx:DataGridColumndataField="label"/>
-
<mx:DataGridColumndataField="data"/>
-
</mx:columns>
-
</mx:DataGrid>
-
<mx:TextAreaid="textArea"
-
editable="false"
-
width="{dataGrid.width}"
-
height="{dataGrid.height}"/>
-
</mx:HBox>
-
-
-
</mx:Application>
Filter :
-
<?xmlversion="1.0"encoding="utf-8"?>
-
<mx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"
-
layout="vertical"
-
verticalAlign="middle"
-
backgroundColor="white"
-
creationComplete="init()">
-
-
<mx:Script>
-
<!--[CDATA[
-
privatevarkeys:Object={};
-
-
-
-
-
-
-
-
-
privatefunctioninit():void
-
{
-
-
-
vararr:Array=[];
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:2,label:"two"});
-
arr.push({data:1,label:"one"});
-
arr.push({data:3,label:"three"});
-
arr.push({data:3,label:"three"});
-
-
-
-
-
varfilteredArr:Array=arr.filter(removedDuplicates);
-
-
arrColl.source=arr;
-
dedupedArrColl.source=filteredArr;
-
}
-
-
-
-
-
-
-
-
-
-
-
-
privatefunctionremovedDuplicates(item:Object,idx:uint,arr:Array):Boolean
-
{
-
if(keys.hasOwnProperty(item.label))
-
{
-
-
-
returnfalse;
-
}
-
else
-
{
-
-
-
-
keys[item.label]=item;
-
returntrue;
-
}
-
}
-
]]-->
-
</mx:Script>
-
-
<mx:ArrayCollectionid="arrColl"/>
-
<mx:ArrayCollectionid="dedupedArrColl"/>
-
-
<mx:HBox>
-
<mx:VBox>
-
<mx:Labeltext="Original({arrColl.length}items):"/>
-
<mx:ListdataProvider="{arrColl}"/>
-
</mx:VBox>
-
<mx:VBox>
-
<mx:Labeltext="Filtered({dedupedArrColl.length}items):"/>
-
<mx:ListdataProvider="{dedupedArrColl}"/>
-
</mx:VBox>
-
</mx:HBox>
-
-
</mx:Application>
搜索数组元素时,可以使用for语句配合break语句
-
for(vari:int=0;i<array.length;i++)
-
{
-
if(array[i]==match)
-
{
-
trace("Elementwithindex"+i+"foundtomatch"+match);
-
break;
-
}
-
}
但上面这种方法效率不高,在ascb.util.ArrayUtilities类中,提供了findMatchIndex,findLastMatchIndex和findMatchIndices三种方法来搜索数组元素。
使用方法如下,ArrayUtilities.findMatchIndex(数组对象,需要匹配的值,搜索开始下标,布尔值);
其中搜索开始下标默认为0。布尔值表示是否返回部分匹配元素,默认为false,即不返回部分匹配元素。
findLastMatchIndex返回最后一个匹配的元素下标。findMatchIndice返回所有匹配的元素下标数组(注意:返回的结果是下标的数组)。
分享到:
相关推荐
针对flex中数组 Array 插入 和 删除
flex array 排序,可对二位数组多个字段排序提供一个参考。
key 要搜索的object的键值 value 要搜索的object的value值 fromIndex从第几行开始搜索 sourceArray 要进行搜索的array
Number of bytes left in base struct flex_array, excluding metadata.
Flex的Array和ArrayCollection
NetApp FlexArray虚拟化软件介绍.pdf
creationComplete="service.send()" > <![CDATA[ import mx.controls.Alert; import mx.rpc.events.FaultEvent;... import mx.collections.ArrayCollection;... import mx.rpc.events.ResultEvent;...
NetApp FlexArray存储虚拟化软件介绍.pdf
动画演示flex布局,包括flex父容器属性以及flex布局子元素属性 flex父容器属性有: 一. flex-direction 主轴方向 row:从左到右 row-reverse:从右到左 column:从上到下 column-reverse:从下到上 二. flex-wrap 子元素...
flex原理和全属性详解flex 是 flexible Box的缩写,意为“弹性布局”,用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为flex布局
flex array 的一些操作,希望可以有帮助
flex组件样式属性中文对照表,翻译过来节省您的翻译时间
flex创建的字体属性框flex创建的字体属性框flex创建的字体属性框flex创建的字体属性框flex创建的字体属性框flex创建的字体属性框
移动web开发——————弹性布局中flex属性演示文档,方便大家理解与学习。 Flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性.
FLEX播放器 flex 开发AIR及Flex之mp3播放器教程 FLEX播放器 flex 开发AIR及Flex之mp3播放器教程
FLEx 开发入门,里面有图片教你怎样安装FLEX的IDE和使用FLEX语言开发的例子
flex-basis 属性用于设置或检索弹性盒伸缩基准值。。 注意:如果元素不是弹性盒对象的元素,则 flex-basis 属性不起作用。 flex: 1 实际上是三个属性的缩写:flex-grow: 1; flex-shrink: 1 flex-basis: auto; ...