1.8.定义数组和对象
1.8.1.问题
您需要定义数组对象或哈希表— 样式对象来存储值或其他对象.
1.8.2.解决办法
使用ActionScript语法之构造函数调用创建一个新的对象或数组,或在MXML中定义它们
1.8.3.讨论
数组和对象是最常见的存储数据的两种数据类型,可通过ActionScript或在MXML中定义。
要想在MXML中定义数据,是使用<mx:Array>标签包裹数组的所有数据项:
数组中的所有数据都是通过索引进行访问。在MXML中还可以创建多维数组,如:
如要在MXML中创建对象,可使用<mx:Object> 标签并添加所有对象属性及其值。例如:
在MXML创建对象有个限制即不能创建多个嵌套的对象,而在script标签中可创建包含多个复杂对象的对象,你可以先创建一个类型为Object的变量,再调用构造函数,最好添加属性:
你还可以通过大括号来创建对象,例如:
注意Person对象的position属性指向另一个包含不同属性的对象,还发现这里的position对象并不需要先申明。
如要在ActionScript中创建数组,先创建变量然后调用Array构造函数:
你也可以不调用构造函数来创建数据,而是通过中括号,如:
这跟调用Array构造函数效果是一样的。
您需要定义数组对象或哈希表— 样式对象来存储值或其他对象.
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>
<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>
<mx:Array>
<mx:String>Flex</mx:String>
<mx:String>Flash</mx:String>
<mx:Array>
</mx:Array>
如要在MXML中创建对象,可使用<mx:Object> 标签并添加所有对象属性及其值。例如:
+展开
-XML
<mx:Object id="person" firstName="John" lastName="Smith" age="50" socialSecurity="123-45-6789"/>
在MXML创建对象有个限制即不能创建多个嵌套的对象,而在script标签中可创建包含多个复杂对象的对象,你可以先创建一个类型为Object的变量,再调用构造函数,最好添加属性:
+展开
-ActionScript
var object:Object = new Object();
var otherObject:Object = new Object();
object.other = otherObject;
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};
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构造函数效果是一样的。
加支付宝好友偷能量挖...