2009-10-01 83 views

回答

2

將對象用作關聯數組時,您只需向其中添加動態屬性,並使用任意值。

爲... in循環遍歷只有動態屬性的對象的,因此,如果您創建一個for ... in循環,並完成一個循環,你就會知道,對象是一個關聯數組。

http://livedocs.adobe.com/flex/3/langref/statements.html#for..in

function isObjectAssociativeArray(obj:Object):Boolean 
{ 
    for (var prop in obj) 
    { 
     return true; 
    } 
    return false; 
} 
+0

據我所知,「動態」屬性只存在於Class上。 – Glenn 2009-10-01 19:51:59

+2

我們在談論2個不同的事情。類定義中的'動態'描述符意味着它可以在運行時分配'動態屬性'。所有通用對象默認爲「動態」,因此可以分配「動態屬性」。 ex:var o:Object = {prop1:「value1」,prop2:「value2」}; 將創建一個具有2個動態屬性o.prop1和o.prop2的對象。 – JStriedl 2009-10-01 19:58:26

0

你可以嘗試getQualifiedClassName,看看如果返回類型是 「對象」。我沒有自己測試過,但它接受flash原語(Object,Array,String ...)以及Classes。