无法自省具有自定义命名空间的Object

时间:2012-07-15 23:01:01

标签: actionscript-3 flash air flash-builder

我有循环内省对象并根据它们的属性解析它们。 这一切都适用于普通物体。但我使用一些具有自定义命名空间的对象,同一个循环不识别任何属性,也不会跟踪任何内容。循环是非常标准的,但无论如何我在这里粘贴:

for (var id:String in record) 
{
    trace(id, " : ", record[id]); 
}

有谁知道如何克服这个问题? 谢谢你的帮助!

1 个答案:

答案 0 :(得分:2)

好的,我刚刚找到了解决方案。

似乎用bytearrays克隆对象会返回一个带有默认命名空间的Object。

功能如下:

function copy(value:Object):Object
{
    var buffer:ByteArray = new ByteArray();
    buffer.writeObject(value);
    buffer.position = 0;
    var result:Object = buffer.readObject();
    return result;
}
如果有人遇到同样的问题,我会把它留在这里......