that’s beautiful.. so much better than typeof.. Though I might also add (if I may), if you want some extremely (almost stupid amount of) detailed info about your class type, you can also use describeType()..
so
var sprite:Sprite = new Sprite();
var spriteDescription:XML = describeType(sprite);
trace (spriteDescription);
var spriteDescription:XML = describeType(sprite);
trace (spriteDescription);
traces:
<type name=”flash.display::Sprite” base=”flash.display::DisplayObjectContainer” isDynamic=”false” isFinal=”false” isStatic=”false”>
<extendsClass type=”flash.display::DisplayObjectContainer”/>
<extendsClass type=”flash.display::InteractiveObject”/>
<extendsClass type=”flash.display::DisplayObject”/>
<extendsClass type=”flash.events::EventDispatcher”/>
<extendsClass type=”Object”/>
<implementsInterface type=”flash.events::IEventDispatcher”/>
<implementsInterface type=”flash.display::IBitmapDrawable”/>
<accessor name=”buttonMode” access=”readwrite” type=”Boolean” declaredBy=”flash.display::Sprite”/>
<accessor name=”soundTransform” access=”readwrite” type=”flash.media::SoundTransform” declaredBy=”flash.display::Sprite”/>
<accessor name=”useHandCursor” access=”readwrite” type=”Boolean” declaredBy=”flash.display::Sprite”/>
<method name=”stopDrag” declaredBy=”flash.display::Sprite” returnType=”void”/>
<accessor name=”dropTarget” access=”readonly” type=”flash.display::DisplayObject” declaredBy=”flash.display::Sprite”/>
<accessor name=”graphics” access=”readonly” type=”flash.display::Graphics” declaredBy=”flash.display::Sprite”/>
<accessor name=”hitArea” access=”readwrite” type=”flash.display::Sprite” declaredBy=”flash.display::Sprite”/>
<method name=”startDrag” declaredBy=”flash.display::Sprite” returnType=”void”>
<parameter index=”1″ type=”Boolean” optional=”true”/>
<parameter index=”2″ type=”flash.geom::Rectangle” optional=”true”/>
</method>
<method name=”swapChildren” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”tabChildren” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”getObjectsUnderPoint” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Array”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”getChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”int” optional=”false”/>
</method>
<method name=”removeChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”int” optional=”false”/>
</method>
<method name=”getChildIndex” declaredBy=”flash.display::DisplayObjectContainer” returnType=”int”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”areInaccessibleObjectsUnderPoint” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Boolean”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”contains” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Boolean”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”mouseChildren” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”removeChild” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”setChildIndex” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<method name=”addChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<accessor name=”numChildren” access=”readonly” type=”int” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”addChild” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”getChildByName” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
<accessor name=”textSnapshot” access=”readonly” type=”flash.text::TextSnapshot” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”swapChildrenAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”int” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<accessor name=”doubleClickEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”contextMenu” access=”readwrite” type=”flash.ui::ContextMenu” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”accessibilityImplementation” access=”readwrite” type=”flash.accessibility::AccessibilityImplementation” declaredBy=”flash.display::InteractiveObject”>
<metadata name=”Inspectable”>
<arg key=”environment” value=”none”/>
</metadata>
</accessor>
<accessor name=”mouseEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”focusRect” access=”readwrite” type=”Object” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”tabIndex” access=”readwrite” type=”int” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”tabEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”alpha” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scale9Grid” access=”readwrite” type=”flash.geom::Rectangle” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”name” access=”readwrite” type=”String” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”filters” access=”readwrite” type=”Array” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”y” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”rotation” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scrollRect” access=”readwrite” type=”flash.geom::Rectangle” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”x” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”cacheAsBitmap” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”accessibilityProperties” access=”readwrite” type=”flash.accessibility::AccessibilityProperties” declaredBy=”flash.display::DisplayObject”/>
<method name=”globalToLocal” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Point”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”getBounds” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Rectangle”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”opaqueBackground” access=”readwrite” type=”Object” declaredBy=”flash.display::DisplayObject”/>
<method name=”hitTestPoint” declaredBy=”flash.display::DisplayObject” returnType=”Boolean”>
<parameter index=”1″ type=”Number” optional=”false”/>
<parameter index=”2″ type=”Number” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
</method>
<accessor name=”visible” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”mouseX” access=”readonly” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”mask” access=”readwrite” type=”flash.display::DisplayObject” declaredBy=”flash.display::DisplayObject”/>
<method name=”getRect” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Rectangle”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”scaleX” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scaleY” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”root” access=”readonly” type=”flash.display::DisplayObject” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”loaderInfo” access=”readonly” type=”flash.display::LoaderInfo” declaredBy=”flash.display::DisplayObject”/>
<method name=”hitTestObject” declaredBy=”flash.display::DisplayObject” returnType=”Boolean”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”transform” access=”readwrite” type=”flash.geom::Transform” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”width” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”stage” access=”readonly” type=”flash.display::Stage” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”parent” access=”readonly” type=”flash.display::DisplayObjectContainer” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”height” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<method name=”localToGlobal” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Point”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<accessor name=”mouseY” access=”readonly” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”blendMode” access=”readwrite” type=”String” declaredBy=”flash.display::DisplayObject”/>
<method name=”removeEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”void”>
<parameter index=”1″ type=”String” optional=”false”/>
<parameter index=”2″ type=”Function” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
</method>
<method name=”addEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”void”>
<parameter index=”1″ type=”String” optional=”false”/>
<parameter index=”2″ type=”Function” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
<parameter index=”4″ type=”int” optional=”true”/>
<parameter index=”5″ type=”Boolean” optional=”true”/>
</method>
<method name=”toString” declaredBy=”flash.events::EventDispatcher” returnType=”String”/>
<method name=”dispatchEvent” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”flash.events::Event” optional=”false”/>
</method>
<method name=”hasEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
<method name=”willTrigger” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
</type>
<extendsClass type=”flash.display::DisplayObjectContainer”/>
<extendsClass type=”flash.display::InteractiveObject”/>
<extendsClass type=”flash.display::DisplayObject”/>
<extendsClass type=”flash.events::EventDispatcher”/>
<extendsClass type=”Object”/>
<implementsInterface type=”flash.events::IEventDispatcher”/>
<implementsInterface type=”flash.display::IBitmapDrawable”/>
<accessor name=”buttonMode” access=”readwrite” type=”Boolean” declaredBy=”flash.display::Sprite”/>
<accessor name=”soundTransform” access=”readwrite” type=”flash.media::SoundTransform” declaredBy=”flash.display::Sprite”/>
<accessor name=”useHandCursor” access=”readwrite” type=”Boolean” declaredBy=”flash.display::Sprite”/>
<method name=”stopDrag” declaredBy=”flash.display::Sprite” returnType=”void”/>
<accessor name=”dropTarget” access=”readonly” type=”flash.display::DisplayObject” declaredBy=”flash.display::Sprite”/>
<accessor name=”graphics” access=”readonly” type=”flash.display::Graphics” declaredBy=”flash.display::Sprite”/>
<accessor name=”hitArea” access=”readwrite” type=”flash.display::Sprite” declaredBy=”flash.display::Sprite”/>
<method name=”startDrag” declaredBy=”flash.display::Sprite” returnType=”void”>
<parameter index=”1″ type=”Boolean” optional=”true”/>
<parameter index=”2″ type=”flash.geom::Rectangle” optional=”true”/>
</method>
<method name=”swapChildren” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”tabChildren” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”getObjectsUnderPoint” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Array”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”getChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”int” optional=”false”/>
</method>
<method name=”removeChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”int” optional=”false”/>
</method>
<method name=”getChildIndex” declaredBy=”flash.display::DisplayObjectContainer” returnType=”int”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”areInaccessibleObjectsUnderPoint” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Boolean”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”contains” declaredBy=”flash.display::DisplayObjectContainer” returnType=”Boolean”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”mouseChildren” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”removeChild” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”setChildIndex” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<method name=”addChildAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<accessor name=”numChildren” access=”readonly” type=”int” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”addChild” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<method name=”getChildByName” declaredBy=”flash.display::DisplayObjectContainer” returnType=”flash.display::DisplayObject”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
<accessor name=”textSnapshot” access=”readonly” type=”flash.text::TextSnapshot” declaredBy=”flash.display::DisplayObjectContainer”/>
<method name=”swapChildrenAt” declaredBy=”flash.display::DisplayObjectContainer” returnType=”void”>
<parameter index=”1″ type=”int” optional=”false”/>
<parameter index=”2″ type=”int” optional=”false”/>
</method>
<accessor name=”doubleClickEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”contextMenu” access=”readwrite” type=”flash.ui::ContextMenu” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”accessibilityImplementation” access=”readwrite” type=”flash.accessibility::AccessibilityImplementation” declaredBy=”flash.display::InteractiveObject”>
<metadata name=”Inspectable”>
<arg key=”environment” value=”none”/>
</metadata>
</accessor>
<accessor name=”mouseEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”focusRect” access=”readwrite” type=”Object” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”tabIndex” access=”readwrite” type=”int” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”tabEnabled” access=”readwrite” type=”Boolean” declaredBy=”flash.display::InteractiveObject”/>
<accessor name=”alpha” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scale9Grid” access=”readwrite” type=”flash.geom::Rectangle” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”name” access=”readwrite” type=”String” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”filters” access=”readwrite” type=”Array” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”y” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”rotation” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scrollRect” access=”readwrite” type=”flash.geom::Rectangle” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”x” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”cacheAsBitmap” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”accessibilityProperties” access=”readwrite” type=”flash.accessibility::AccessibilityProperties” declaredBy=”flash.display::DisplayObject”/>
<method name=”globalToLocal” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Point”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<method name=”getBounds” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Rectangle”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”opaqueBackground” access=”readwrite” type=”Object” declaredBy=”flash.display::DisplayObject”/>
<method name=”hitTestPoint” declaredBy=”flash.display::DisplayObject” returnType=”Boolean”>
<parameter index=”1″ type=”Number” optional=”false”/>
<parameter index=”2″ type=”Number” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
</method>
<accessor name=”visible” access=”readwrite” type=”Boolean” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”mouseX” access=”readonly” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”mask” access=”readwrite” type=”flash.display::DisplayObject” declaredBy=”flash.display::DisplayObject”/>
<method name=”getRect” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Rectangle”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”scaleX” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”scaleY” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”root” access=”readonly” type=”flash.display::DisplayObject” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”loaderInfo” access=”readonly” type=”flash.display::LoaderInfo” declaredBy=”flash.display::DisplayObject”/>
<method name=”hitTestObject” declaredBy=”flash.display::DisplayObject” returnType=”Boolean”>
<parameter index=”1″ type=”flash.display::DisplayObject” optional=”false”/>
</method>
<accessor name=”transform” access=”readwrite” type=”flash.geom::Transform” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”width” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”stage” access=”readonly” type=”flash.display::Stage” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”parent” access=”readonly” type=”flash.display::DisplayObjectContainer” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”height” access=”readwrite” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<method name=”localToGlobal” declaredBy=”flash.display::DisplayObject” returnType=”flash.geom::Point”>
<parameter index=”1″ type=”flash.geom::Point” optional=”false”/>
</method>
<accessor name=”mouseY” access=”readonly” type=”Number” declaredBy=”flash.display::DisplayObject”/>
<accessor name=”blendMode” access=”readwrite” type=”String” declaredBy=”flash.display::DisplayObject”/>
<method name=”removeEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”void”>
<parameter index=”1″ type=”String” optional=”false”/>
<parameter index=”2″ type=”Function” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
</method>
<method name=”addEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”void”>
<parameter index=”1″ type=”String” optional=”false”/>
<parameter index=”2″ type=”Function” optional=”false”/>
<parameter index=”3″ type=”Boolean” optional=”true”/>
<parameter index=”4″ type=”int” optional=”true”/>
<parameter index=”5″ type=”Boolean” optional=”true”/>
</method>
<method name=”toString” declaredBy=”flash.events::EventDispatcher” returnType=”String”/>
<method name=”dispatchEvent” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”flash.events::Event” optional=”false”/>
</method>
<method name=”hasEventListener” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
<method name=”willTrigger” declaredBy=”flash.events::EventDispatcher” returnType=”Boolean”>
<parameter index=”1″ type=”String” optional=”false”/>
</method>
</type>
Enjoy ![]()
This entry was posted on Monday, October 26th, 2009 at 10:06 am and is filed under ActionScript, Flash, Tutorials. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.
You might also like
| Happy New Year , by new Theme (Christmas 2010) Happy New Year new Theme (Christmas 2010) added to FlashBannerOnline.Com For access to and use of this Template,... | TextField in AS3 1. Create a - Flash File(ActionScript 3.0) 2. Now go to your Actions tab, you can do this by pressing F9, or... | Creating a Flash Preloader Using AS3 This tutorial will teach you how to create a very simple preloader for your Flash movies using ActionScript 3.0.... | Render Event in AS3 ActionScript has long since relied on the enterFrame (onEnterFrame) event for time-based actions, especially animation... |








