1.8.定义数组和对象

1.8.1.问题
您需要定义数组对象或哈希表— 样式对象来存储值或其他对象.
1.8.2.解决办法
使用ActionScript语法之构造函数调用创建一个新的对象或数组,或在MXML中定义它们
1.8.3.讨论
数组和对象是最常见的存储数据的两种数据类型,可通过ActionScript或在MXML中定义。

要想在MXML中定义数据,是使用<mx:Array>标签包裹数组的所有数据项:
+展开
-XML
<mx:Array>
<mx:String>Flex</mx:String>
<mx:String>Flash</mx:String>
<mx:String>Flash Media Server</mx:String>
<mx:String>Flash Lite</mx:String>
<mx:String>AIR</mx:String>
</mx:Array>

数组中的所有数据都是通过索引进行访问。在MXML中还可以创建多维数组,如:
+展开
-XML
<mx:Array>
<mx:Array>
<mx:String>Flex</mx:String>
<mx:String>Flash</mx:String>
<mx:Array>
</mx:Array>

如要在MXML中创建对象,可使用<mx:Object> 标签并添加所有对象属性及其值。例如:
+展开
-XML
<mx:Object id="personfirstName="JohnlastName="Smithage="50socialSecurity="123-45-6789"/>

在MXML创建对象有个限制即不能创建多个嵌套的对象,而在script标签中可创建包含多个复杂对象的对象,你可以先创建一个类型为Object的变量,再调用构造函数,最好添加属性:
+展开
-ActionScript
var object:Object = new Object();
var otherObject:Object = new Object();
object.other = otherObject;

你还可以通过大括号来创建对象,例如:
+展开
-ActionScript
var person:Object = {name:"John Smith" , age:22, 
position:{department:"Accounting" ,salary:50000, title:"Junior Accountant" }, id:303};

注意Person对象的position属性指向另一个包含不同属性的对象,还发现这里的position对象并不需要先申明。

如要在ActionScript中创建数组,先创建变量然后调用Array构造函数:
+展开
-ActionScript
var arr:Array = new Array("red""blue""white""black""green""yellow");

你也可以不调用构造函数来创建数据,而是通过中括号,如:
+展开
-ActionScript
var noConstructorArray:Array = [2, 4, 6, 8, 10, 12, 14, 16];

这跟调用Array构造函数效果是一样的。

加支付宝好友偷能量挖...


评论(0)网络
阅读(105)喜欢(0)flash/flex/fcs/AIR