ActionScript 3 Variabel-Typen prüfen
Problem: Fast alle Variabeltypen in AS3 sind Objekte – ein String, ein Array, ein XML, usw… und die Funktion „typeof()“ oder ein IF-statement mit „is“ (zb: if(myVariable is Object){…} ) hilft einem darum nicht weiter.
Lösung: Die Funktion „getQualifiedClassName()“ liefert ein String mit der exakten Beschreibung. Actionscript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
var o = new Array(); trace ("var o = new Array()"); trace (getQualifiedClassName(o)); trace (typeof(o)); var o = new Object(); trace ("var o = new Object();"); trace (getQualifiedClassName(o)); trace (typeof(o)); var o = new String(); trace ("var o = new String()"); trace (getQualifiedClassName(o)); trace (typeof(o)); var o = new Number() trace ("var o = new Number()"); trace (getQualifiedClassName(o)); trace (typeof(o)); var o = 3.14; trace ("var o = 3.14"); trace (getQualifiedClassName(o)); trace (typeof(o)); |
Ausgabe:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
var o = new Array() Array object var o = new Object(); Object object var o = new String() String string var o = new Number() int number var o = 3.14 Number number |
Die Dokumentationsseite der Funktion:
http://help.adobe.com/de_DE/AS3LCR/Flash_10.0/flash/utils/package.html