http://blog.csdn.net/songhuanren/archive/2007/12/25/1966643.aspx
建议多用Dictionary , 最好是取代object (object 不会被编辑器检测) ,
下面是网上的关于Dictionary
AS3中的Dictionary类(flash.utils.Dictionary)是一个新的AS类。Dictionary类和Object唯一的区别在于:Dictionary对象可以使用非字符串作为键值对的键。例如:
var obj:Object = new Object();
obj["name"] = 1; // 键是字符串"name"
obj[1] = 2; // 键是1 (被转换成字符串"1")
obj[new Object()] = 3; // 键是new Object(),被转传成字符串"[object Object]"
for (var prop:String in obj) {
trace(prop); // 输出:[object Object], 1, name
trace(obj[prop]); // 输出:3, 2, 1
}
也就是说,无论用什么类型的变量作为键,都将被转换成字符串。同时,如果你使用了不同的对象作为键,都会北转换成字符串"[object Object]"作为键,因此而指向了同一个数据。例如:
ActionScript Code:
var a:Object = new Object();
var b:Object = new Object();
var obj:Object = new Object();
obj[a] = 1; // obj["[object Object]"] = 1;
obj[b] = 2; // obj["[object Object]"] = 2;
for (var prop:String in obj) {
trace(prop); // traces: [object Object]
trace(obj[prop]); // traces: 2
}
Dictionary类将没有这个限制,你可以将键设置成任何一种数据类型。例如:
import flash.utils.Dictionary;
var a:Object = new Object();
var b:Object = new Object();
var dict:Dictionary = new Dictionary();
dict[a] = 1; // dict[a] = 1;
dict[b] = 2; // dict[b] = 2;
for (var prop:* in dict) {
trace(prop); // traces: [object Object], [object Object]
trace(dict[prop]); // traces: 1, 2
}
虽然在trace的时候,输出的还是[object Object],但是这个结果是对象的toString的结果。在Dictionary对象中,代表的是不同的对象引用。
在Directionary类的构造函数中传入true
var dict:Dictionary = new Dictionary(true); // use weak references as keys
var obj:Object = new Object();
dict[obj] = true;
delete obj;
虽然dict中有引用到obj,但并不是一个有效引用,所以obj仍然会被垃圾回收
分享到:
相关推荐
flex中文帮助flex中文帮助flex中文帮助flex中文帮助
完整实例在flex中实现iframe,按照说明文档步骤即可使用,我已测试过
在Flex中如何使用按钮Button组件进行开发
flex中文帮助文档flex中文帮助文档
本文所有资料均来自Flex官方文档,其英文版权归 Adobe公司所有。 均有实例代码讲解
flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助文档flex 中文帮助...
这个小例子是使用Java作为服务端、Flex做前台,对一个xml文件的读取和写入。 环境:MyEclipse6.0.1+Flex3...总结:对Flex和Java对象之间的转换还要进一步的研究,认识到Flex中样式的重要性。Flex的控件还要进一步学习。
Flex中文帮助 学习Flex的好资料 入门提高都实用
Flex中文帮助 技术支持: http://www.ZzGps.Cn 技术分享
FLEX中文教程+实例
Flex技术中AdvancedDataGrid使用方法
如何在Flex中使用profile的教程
Flex学习文档,Flex中文文档,,记载了各种学习心得
这个就相当于flex的CSS2.0帮助文档 详细的告诉你flex中每个样式的使用方法
flex教程 Flex中文基础教程Flex中文基础教程Flex中文基础教程
flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...
flex中使用json 含例子和json包
Flex与Bison使用教程
自己整理的关于Twaver组件在Flex中的使用,不对的地方忘多提意见