--
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 中测试的结果似乎并不怎么理想,总而言之是要使用递规的