微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

flex object 联合数组

问题
我要创建用名称元素作为索引的数组
解决办法
创建联合数组
讨论
用联合数组其每个元素都有特定的含义,这一点原来的数组类型是做不到的。
var aMembers:Array = new Array("Franklin","Gina","Sindhu");
联合数组在其他的语言叫做哈希表,在ActionScript 里它就是Object 类的一个实例,联合
数组使用名称元素来代替数字下标,该名称也被称为关键字或属性,说关键字更好理解些,它
关联了元素值,两者一一对应。
创建联合数组不是用Array 类而是Object类创建的,它就是Object 类的一个实例,理论上
Object 类是任何类的基类。所有的对象都能作为联合数组,但是除非有特殊需要,最好还是用
Object 类创建。
用{ } ,而且用逗号分开每个键值对,键值对之间用:,像下面:
var memebers:Object = {scribe: "Franklin",
chairperson: "Gina",
treasurer: "Sindhu"};
也可以像下面那样创建联合数组:
var members:Object = new Object( );
members.scribe = "Franklin";
members.chairperson = "Gina";
members.treasurer = "Sindhu";
有两种方法访问联合数组内容,一种是通过访问属性名称(关键字):
trace(members.scribe); // 显示: Franklin
另一种就像数组那样,把关键字作为下标来访问,用[ ] 符号:
trace(members["scribe"]); // 显示: Franklin
这种方式更加灵活,可以在数组中进行遍历,对于动态生成的关键值和内容这种访问方式
是最好的,例如:
var members:Object = new Object();
members.councilperson1 = "Beatrice";
members.councilperson2 = "Danny";
members.councilperson3 = "Vladamir";
for (var i:int = 1; i <= 3; i++) {
trace(members["councilperson" + i];
}
数组访问方式在循环语句里经常用到:
var members:Object = new Object( );
members["councilperson"] = "Ruthie";
trace(members.councilperson); // 显示Ruthie
members.councilperson = "Rebecca";
trace(members["councilperson"]); // 显示: Rebecca

读取联合数组问题我要怎样遍历联合数组解决办法使用for . . . in 语句讨论基于整形下标的数组可以通过for 语句进行循环遍历,但是,用关键字作索引的联合数组就不能这样遍历了,还好,联合数组可以通过for . . . in 语句进行遍历访问。该语句会访问指定对象所有可用的属性,语法如下:for ( keyin object) {// Actions}for . . . in 语句不需要循环变量更新语句,决定循环次数的是对象的属性个数。注意这key 就是存储每个属性名称的:var members:Object = new Object( );members.scribe = "Franklin";members.chairperson = "Gina";members.treasurer = "Sindhu";// 使用for . . . in 语句遍历所有元素for (var sRole:String in members) {// 显示:// treasurer: Sindhu// chairperson: Gina// scribe: Franklintrace(sRole + ": " + members[sRole]);}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐