2009-08-06 16 views
2

Ich versuche, den Inhalt einer arraycollection mithilfe meiner Debugfunktion (die eine Zeichenfolge benötigt) auszugeben. Weiß jemand, wie man das macht? Ich möchte, dass es ziemlich einfach ist, aber scheint nicht einen Weg zu finden ... Ich bekomme das Wort "Objekt" eine Menge Zeit gedruckt.flex Inhalt von arraycollection als Zeichenfolge abrufen

+0

Können Sie die Funktion hinzufügen können, die Sie verwenden, und die Quelle der Objekte an sie übergeben werden? –

+0

Hey Dan M. Ich habe eine Reihe von Funktionen ausprobiert, aber keiner schien wirklich zu funktionieren. Das Objekt, das zum Erstellen der ArrayCollection verwendet wird, sind XML-Knoten von einem HTTPService. Ich habe es jetzt funktioniert. Vielen Dank! – thomas

Antwort

0

Die folgende Methode sollten Sie bekommen, was Sie brauchen:

public static function arrayCollectionToString(arr:ArrayCollection):String 
{ 
    var toRet:String = "["; 
    for each(var obj:Object in arr) { 
     toRet += obj.toString() + ", "; 
    } 
    toRet += "]"; 
    return toRet; 
} 

Wenn Sie dies als Ihr Debug-Methode in der gleichen Klasse halten, können Sie dann verwenden, könnte wie folgt aussehen:

SomeDebugClass.dbgMessage(SomeDebugClass.arrayCollectionToString(myArrayCollection)); 
+1

Dies wird ein abschließendes Komma am Ende der Liste haben. Verwenden Sie die Antwort unten von sharvey. – Edyn

11

Es viel sauberer zu tun:

var str:String = '['+myArrayCol.source.join(', ')+']'; 

die Quelleigenschaft einer ArrayCollection ist ein Array, also alle übliche Funktionen sind verfügbar.

0

Standard ist allready Koma

getrennt
array.toString() 
+0

Dies ist der Fall, wenn Sie auf die Eigenschaft 'source' (die ein Array ist) auf das ArrayCollection-Objekt zugreifen. –

0

Sie

ObjectUtil.toString(arrayCollection); 
Verwandte Themen