1.8节. 定义数组和对象

 

1.8. 定义数组和对象<o:p></o:p>

1.8.1. 问题<o:p></o:p>

您需要定义数组对象或哈希表 — 样式对象来存储值或其他对象.<o:p></o:p>

1.8.2. 解决办法<o:p></o:p>

使用ActionScript语法之构造函数调用创建一个新的对象或数组,或在MXML中定义它们<o:p></o:p>

1.8.3. 讨论<o:p></o:p>

数组和对象是最常见的存储数据的两种数据类型,可通过ActionScript或在MXML中定义。要想在MXML中定义数据,是使用<mx:Array>标签包裹数组的所有数据项:<o:p></o:p>

<mx:Array> <o:p></o:p>

        <mx:String>Flex</mx:String> <o:p></o:p>

        <mx:String>Flash</mx:String> <o:p></o:p>

        <mx:String>Flash Media Server</mx:String> <o:p></o:p>

        <mx:String>Flash Lite</mx:String> <o:p></o:p>

        <mx:String>AIR</mx:String> <o:p></o:p>

</mx:Array><o:p></o:p>

数组中的所有数据都是通过索引进行访问。在MXML中还可以创建多维数组,如:<o:p></o:p>

    <mx:Array> <o:p></o:p>

        <mx:Array> <o:p></o:p>

            <mx:String>Flex</mx:String> <o:p></o:p>

            <mx:String>Flash</mx:String> <o:p></o:p>

        <mx:Array> <o:p></o:p>

</mx:Array><o:p></o:p>

如要在MXML中创建对象,可使用<mx:Object> 标签并添加所有对象属性及其值。例如:<o:p></o:p>

    <mx:Object id="person" firstName="John" lastName="Smith age="50" socialSecurity="123-45-6789"/><o:p></o:p>

在MXML创建对象有个限制即不能创建多个嵌套的对象,而在script标签中可创建包含多个复杂对象的对象,你可以先创建一个类型为Object的变量,再调用构造函数,最好添加属性:<o:p></o:p>

    var object:Object = new Object(); <o:p></o:p>

    var otherObject:Object = new Object(); <o:p></o:p>

    object.other = otherObject; <o:p></o:p>

你还可以通过大括号来创建对象,例如:<o:p></o:p>

Code View:<o:p></o:p>

var person:Object = {name:"John Smith", age:22,  position:{department:"Accounting"<o:p></o:p>

salary:50000, title:"Junior Accountant"}, id:303};  <o:p></o:p>

 <o:p></o:p>

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

如要在ActionScript中创建数组,先创建变量然后调用Array构造函数:<o:p></o:p>

Code View:<o:p></o:p>

var arr:Array = new Array("red", "blue", "white", "black", "green", "yellow"); <o:p></o:p>

<o:p></o:p>

你也可以不调用构造函数来创建数据,而是通过中括号,如:<o:p></o:p>

    var noConstructorArray:Array = [2, 4, 6, 8, 10, 12, 14, 16];<o:p></o:p>

这跟调用Array构造函数效果是一样的。<o:p></o:p>

<o:p>
</o:p>

你可能感兴趣的:(Flex,Flash,AIR,actionscript)