mx.utils包 之 ObjectCopy 类

类别:编程语言 点击:0 评论:0 推荐:

ObjectCopy 类

ObjectCopy 类是一个静态类,它包括一个静态方法copy,我在http://livedocs.macromedia.com找到了它的解释:Static class with methods for performing copies of in memory objects including nested property arrays. This class is for internal use only.它的功能是对内存中对象进行深度复制,在内存中重新创建一个对象实例,而不仅仅只是引用。这里可以看一个例子:

var obj = new Object ();

obj.date = new Date ();

obj.data = [42, "foo", {nested:"LeeFJ"}];

//进行深度拷贝

var objCopy:Object = mx.utils.ObjectCopy.copy (obj);

trace(obj == objCopy);

trace("Test: " + objCopy.data[2].nested);

 

输出:

false

Test: LeeFJ

分析:

False 说明obj 和 objCopy 并没有引用同一个对象实例。

 

然后,还可以有兴趣关注以下ObjectCopy类的实现,我用硕思2005得到了代码,但是在Flash中测试的结果似乎并不怎么理想,总而言之是要使用递规的

本文地址:http://com.8s8s.com/it/it24423.htm