Top level or global constants are available in every script, and are visible to every Timeline and scope in your document.
Public Constants
 PropertyDefined by
  Infinity : Number
A special value representing positive infinity.
Top Level
  -Infinity : Number
A special value representing negative infinity.
Top Level
  NaN : Number
A special member of the Number data type that represents a value that is "not a number".
Top Level
  undefined : *
A special value that applies to untyped variables that have not been initialized or dynamic object properties that have not been initialized.
Top Level


Top level or global functions are available in any part of a SWF file where ActionScript is used, or in any user-defined class. Most of the global functions from ActionScript 2.0 have been migrated into classes.
Public Functions
 FunctionDefined by
  
Array(... args):Array
Creates a new array.
Top Level
  
Boolean(expression:Object):Boolean
Converts the parameter expression to a Boolean value and returns the value.
Top Level
  
Decodes an encoded URI into a string.
Top Level
  
Decodes an encoded URI component into a string.
Top Level
  
Encodes a string into a valid URI (Uniform Resource Identifier).
Top Level
  
Encodes a string into a valid URI component.
Top Level
  
Converts the parameter to a string and encodes it in a URL-encoded format, where most nonalphanumeric characters are replaced with % hexadecimal sequences.
Top Level
  
int(value:Number):int
Converts a given numeric value to an integer value.
Top Level
  
Returns true if it is a finite number or false if it is Infinity or -Infinity.
Top Level
  
Returns true if the value is NaN(not a number).
Top Level
  
Determines whether the specified string is a valid name for an XML element or attribute.
Top Level
  
Number(expression:Object):Number
Converts a given value to a Number value.
Top Level
  
Every value in ActionScript 3.0 is an object, which means that calling Object() on a value simply returns that value.
Top Level
  
Converts a string to a floating-point number.
Top Level
  
parseInt(str:String, radix:uint = 0):Number
Converts a string to an integer.
Top Level
  
String(expression:Object):String
Returns a string representation of the specified parameter.
Top Level
  
trace(... arguments):void
Displays expressions, or writes to log files, while debugging.
Top Level
  
uint(value:Number):uint
Converts a given numeric value to an unsigned integer value.
Top Level
  
Evaluates the parameter str as a string, decodes the string from URL-encoded format (converting all hexadecimal sequences to ASCII characters), and returns the string.
Top Level
  
XML(expression:Object):XML
Converts an object to an XML object.
Top Level
  
XMLList(expression:Object):XMLList
Converts an object to an XMLList object, as described in the following table.
Top Level
Constant detail
Infinity constant
public const Infinity:Number

A special value representing positive infinity. The value of this constant is the same as Number.POSITIVE_INFINITY.

Example
The result of division by 0 is Infinity, but only when the divisor is a positive number.

trace(0 / 0);  // Output: NaN
trace(7 / 0);  // Output: Infinity
trace(-7 / 0); // Output: -Infinity

See also
Number.POSITIVE_INFINITY
-Infinity constant
public const -Infinity:Number

A special value representing negative infinity. The value of this constant is the same as Number.NEGATIVE_INFINITY.

Example
The result of division by 0 is -Infinity, but only when the divisor is a negative number.

trace(0 / 0);  // Output: NaN
trace(7 / 0);  // Output: Infinity
trace(-7 / 0); // Output: -Infinity

See also
Number.NEGATIVE_INFINITY
NaN constant
public const NaN:Number

A special member of the Number data type that represents a value that is "not a number". When a mathematical expression results in a value that cannot be expressed as a number, the result is NaN. The following list describes common expressions that result in NaN.

The NaN value is not a member of the int or uint data types.

The NaN value is not considered equal to any other value, including NaN, which makes it impossible to test whether an expression is NaN using the equality operator. To determine whether a number is NaN, use isNaN().

See also
isNaN(), Number.NaN
undefined constant
public const undefined:*

A special value that applies to untyped variables that have not been initialized or dynamic object properties that have not been initialized. In ActionScript 3.0 only variables that are untyped can hold the value undefined, which is not true in ActionScript 1.0 and ActionScript 2.0. For example, both of the following variables are undefined because they are untyped and unitialized:

The value undefined also applies to uninitialized or undefined properties of dynamic objects. For example, if an object is an instance of the Object class, the value of any dynamically added property is undefined until a value is assigned to that property.

Results vary when undefined is used with various functions:

The value undefined should not be confused with the special value null. When null and undefined are compared with the equality (==) operator, they compare as equal. However, when null and undefined are compared with the strict equality (===) operator, they compare as not equal.

Example
In the following example, an untyped variable, myVar is declared but not initialized. The value of myVar is undefined because the variable is untyped. This is true whether the variable has no type annotation or uses the special (*) untyped annotation (var myVar:*;).

// trace value of untyped and uninitialized variable
var myVar;
trace(myVar);           // Output: undefined

The same rule applies to uninitialized properties of a dynamic object. For example, given an instance, obj, of the dynamic class A, the value of obj.propName, which is an uninitialized property of the obj instance, is undefined.

dynamic class A {}
var obj:A = new A()

// trace undefined property of obj
trace(obj.propName); // Output: undefined

See also
null
Function detail
Array function

public function Array(... args):Array

Creates a new array. The array can be of length zero or more, or an array populated by a list of specified elements, possibly of different data types. The number and data type of the arguments you use determine the contents of the returned array. Using this function is similar to creating an array with the Array class constructor.

Use the as operator for explicit type conversion, or type casting, when the argument is not a primitive value. For more information, see the Example section of this entry.

Parameters
... args — You can pass no arguments for an empty array, a single integer argument for an array of a specific length, or a series of comma separated values of various types for an array populated with those values.

Returns
Array — An array of length zero or more.

Example
The following example demonstrates the behavior of the Array() function when an argument is not a primitive value. A common use case of casting to an array is the conversion of an Object instance that stores its values in array format. If Array() is called with an argument of type Object, or any other non-primitive data type, a reference to the object is stored in an element of the new array. In other words, if the only argument passed is an object, a reference to that object becomes the first element of the new array.
var obj:Object = [ "a", "b", "c" ];
      
var newArray:Array = Array( obj );

trace(newArray == obj);    // Output: false
trace(newArray[0] == obj); // Output: true
trace(newArray[0][0])      // Output: a
trace(newArray[0][1])      // Output: b
trace(newArray[0][2])      // Output: c

To cast obj to an array, use the as operator, which will return an array reference if obj is a valid array and null otherwise:
var obj:Object = [ "a", "b", "c" ];
      
var newArray:Array = obj as Array;

trace(newArray == obj); // Output: true
trace(newArray[0]);     // Output: a
trace(newArray[1]);     // Output: b
trace(newArray[2]);     // Output: c

See also
Array class, as operator
Boolean function

public function Boolean(expression:Object):Boolean

Converts the parameter expression to a Boolean value and returns the value.

The return value depends on the data type and value of the argument, as described in the following table:

Input Value Example Return Value
0 0 false
NaN NaN false
Number (not 0 or NaN) 4 true
Empty String "" false
Non-empty String "6" true
null null false
undefined undefined false
instance of Object class var obj:Object = new Object();
Boolean(obj)
true
No argument Boolean() false

Unlike previous versions of ActionScript, this function returns the same results as does the Boolean class constructor.

Parameters
expression:Object — An expression or object to convert to Boolean.

Returns
Boolean — The result of the conversion to Boolean.
decodeURI function

public function decodeURI(uri:String):String

Decodes an encoded URI into a string. Returns a string in which all characters previously encoded by the encodeURI function are restored to their unencoded representation.

The following table shows the set of escape sequences that are not decoded to characters by the decodeURI function. Use decodeURIComponent() to decode the escape sequences in this table.

Escape sequences not decoded Character equivalents
%23 #
%24 $
%26 &
%2B +
%2C ,
%2F /
%3A :
%3B ;
%3D =
%3F ?
%40 @

Parameters
uri:String — A string encoded with the encodeURI function.

Returns
String — A string in which all characters previously escaped by the encodeURI function are restored to their unescaped representation.

Example
package {
    import flash.display.Sprite;

    public class DecodeURIExample extends Sprite {
        public function DecodeURIExample() {
            var uri:String = "http://www.example.com/application.jsp?user=<user name='some user'></user>";
            var encoded:String = encodeURI(uri);
            var decoded:String = decodeURI(encoded);
            trace(uri);        // http://www.example.com/application.jsp?user=<user name='some user'></user>
            trace(encoded);    // http://www.example.com/application.jsp?user=%3Cuser%20name='some%20user'%3E%3C/user%3E
            trace(decoded);    // http://www.example.com/application.jsp?user=<user name='some user'></user>
        }
    }
}

See also
decodeURIComponent(), encodeURI(), encodeURIComponent()
decodeURIComponent function

public function decodeURIComponent(uri:String):String

Decodes an encoded URI component into a string. Returns a string in which all characters previously escaped by the encodeURIComponent function are restored to their uncoded representation.

This function differs from the decodeURI() function in that it is intended for use only with a part of a URI string, called a URI component. A URI component is any text that appears between special characters called component separators ( ":", "/", ";" and "?" ). Common examples of a URI component are "http" and "www.adobe.com".

Another important difference between this function and decodeURI() is that because this function assumes that it is processing a URI component it treats the escape sequences that represent special separator characters (; / ? : @ & = + $ , #) as regular text that should be decoded.

Parameters
uri:String — A string encoded with the encodeURIComponent function.

Returns
String — A string in which all characters previously escaped by the encodeURIComponent function are restored to their unescaped representation.

See also
decodeURI(), encodeURI(), encodeURIComponent()
encodeURI function

public function encodeURI(uri:String):String

Encodes a string into a valid URI (Uniform Resource Identifier). Converts a complete URI into a string in which all characters are encoded as UTF-8 escape sequences unless a character belongs to a small group of basic characters.

The following table shows the entire set of basic characters that are not converted to UTF-8 escape sequences by the encodeURI function.

Characters not encoded
0 1 2 3 4 5 6 7 8 9
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
; / ? : @ & = + $ , #
- _ . ! ~ * ' ( )

Parameters
uri:String — A string representing a complete URI.

Returns
String — A string with certain characters encoded as UTF-8 escape sequences.

Example
package {
    import flash.display.Sprite;

    public class EncodeURIExample extends Sprite {
        public function EncodeURIExample() {
            var uri:String = "http://www.example.com/application.jsp?user=<user name='some user'></user>";
            var encoded:String = encodeURI(uri);
            var decoded:String = decodeURI(encoded);
            trace(uri);        // http://www.example.com/application.jsp?user=<user name='some user'></user>
            trace(encoded);    // http://www.example.com/application.jsp?user=%3Cuser%20name='some%20user'%3E%3C/user%3E
            trace(decoded);    // http://www.example.com/application.jsp?user=<user name='some user'></user>
        }
    }
}

See also
decodeURI(), decodeURIComponent(), encodeURIComponent()
encodeURIComponent function

public function encodeURIComponent(uri:String):String

Encodes a string into a valid URI component. Converts a substring of a URI into a string in which all characters are encoded as UTF-8 escape sequences unless a character belongs to a very small group of basic characters.

This function differs from the encodeURI() function in that it is intended for use only with a part of a URI string, called a URI component. A URI component is any text that appears between special characters called component separators ( ":", "/", ";" and "?" ). Common examples of a URI component are "http" and "www.adobe.com".

Another important difference between this function and encodeURI() is that because this function assumes that it is processing a URI component it treats the special separator characters (; / ? : @ & = + $ , #) as regular text that should be encoded.

The following table shows all characters that are not converted to UTF-8 escape sequences by the encodeURIComponent function.

Characters not encoded
0 1 2 3 4 5 6 7 8 9
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
- _ . ! ~ * ' ( )

Parameters
uri:String

Returns
String

See also
decodeURI(), decodeURIComponent(), encodeURI()
escape function

public function escape(str:String):String

Converts the parameter to a string and encodes it in a URL-encoded format, where most nonalphanumeric characters are replaced with % hexadecimal sequences. When used in a URL-encoded string, the percentage symbol (%) is used to introduce escape characters, and is not equivalent to the modulo operator (%).

The following table shows all characters that are not converted to escape sequences by the escape() function.

Characters not encoded
0 1 2 3 4 5 6 7 8 9
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
@ - _ . * + /

Parameters
str:String — The expression to convert into a string and encode in a URL-encoded format.

Returns
String — A URL-encoded string.

See also
unescape()
int function

public function int(value:Number):int

Converts a given numeric value to an integer value. Decimal values are truncated at the decimal point.

Parameters
value:Number — A value to be converted to an integer.

Returns
int — The converted integer value.

See also
uint()
isFinite function

public function isFinite(num:Number):Boolean

Returns true if it is a finite number or false if it is Infinity or -Infinity. The presence of Infinity or -Infinity indicates a mathematical error condition such as division by 0.

Parameters
num:Number — A number to evaluate as finite or infinite.

Returns
Boolean — Returns true if it is a finite number or false if it is infinity or negative infinity.
isNaN function

public function isNaN(num:Number):Boolean

Returns true if the value is NaN(not a number). This function is useful for checking whether a mathematical expression evaluates successfully to a number. The NaN value is a special member of the Number data type that represents a value that is "not a number." Note that the NaN value is not a member of the int or uint data types.

The following table describes the return value of isNaN() on various input types and values.

Input Type/Value Example Return Value
0 divided by 0 isNaN(0/0) true
Non-zero number divided by 0 isNaN(5/0) false
Square root of a negative number isNaN(Math.sqrt(-1)) true
Arcsine of number greater than 1 or less than 0 isNaN(Math.asin(2)) true
String that can be converted to Number isNaN("5") false
String that cannot be converted to Number isNaN("5a") true

Parameters
num:Number — A numeric value or mathematical expression to evaluate.

Returns
Boolean — Returns true if the value is NaN(not a number) and false otherwise.
isXMLName function

public function isXMLName(str:String):Boolean

Determines whether the specified string is a valid name for an XML element or attribute.

Parameters
str:String — A string to evaluate.

Returns
Boolean — Returns true if the str argument is a valid XML name; false otherwise.
Number function

public function Number(expression:Object):Number

Converts a given value to a Number value. The following table shows the result of various input types:
Input Type/Value Example Return Value
undefined Number(undefined) NaN
null Number(null) 0
true Number(true) 1
false Number(false) 0
NaN Number(NaN) NaN
Empty String Number("") 0
String that converts to Number Number("5") The number (e.g. 5)
String that does not convert to Number Number("5a") NaN

Parameters
expression:Object

Returns
Number
Object function

public function Object(value:Object):Object

Every value in ActionScript 3.0 is an object, which means that calling Object() on a value simply returns that value.

Parameters
value:Object — An object or a number, string, or Boolean value to convert.

Returns
Object — An object that
parseFloat function

public function parseFloat(str:String):Number

Converts a string to a floating-point number. The function reads, or parses, and returns the numbers in a string until it reaches a character that is not a part of the initial number. If the string does not begin with a number that can be parsed, parseFloat() returns NaN. White space preceding valid integers is ignored, as are trailing nonnumeric characters.

Parameters
str:String — The string to read and convert to a floating-point number.

Returns
Number — A number or NaN (not a number).
parseInt function

public function parseInt(str:String, radix:uint = 0):Number

Converts a string to an integer. If the specified string in the parameters cannot be converted to a number, the function returns NaN. Strings beginning with 0x are interpreted as hexadecimal numbers. Unlike in previous versions of ActionScript, integers beginning with 0 are not interpreted as octal numbers. You must specify a radix of 8 for octal numbers. White space and zeroes preceding valid integers is ignored, as are trailing nonnumeric characters.

Parameters
str:String — A string to convert to an integer.
radix:uint (default = 0) — An integer representing the radix (base) of the number to parse. Legal values are from 2 to 36.

Returns
Number — A number or NaN (not a number).
String function

public function String(expression:Object):String

Returns a string representation of the specified parameter.

The following table shows the result of various input types:

Input Type/Value Return Value
undefined undefined
null "null"
true "true"
false "false"
NaN "NaN"
String String
Object Object.toString()
Number String representation of the number

Parameters
expression:Object — An expression to convert to a string.

Returns
String — A string representation of the value passed for the expression parameter.
trace function

public function trace(... arguments):void

Displays expressions, or writes to log files, while debugging. A single trace statement can support multiple arguments. If any argument in a trace statement includes a data type other than a String, the trace function invokes the associated toString() method for that data type. For example, if the argument is a Boolean value the trace function invokes Boolean.toString() and displays the return value.

Parameters
... arguments — One or more (comma separated) expressions to evaluate. For multiple expressions, a space is inserted between each expression in the output.
uint function

public function uint(value:Number):uint

Converts a given numeric value to an unsigned integer value. Decimal values are truncated at the decimal point.

The following table describes the return value of uint() on various input types and values.

Input Type/Value Example Return Value
undefined uint(undefined) 0
null uint(null) 0
0 uint(0) 0
NaN uint(NaN) 0
Positive floating point number uint(5.31) truncated unsigned integer (e.g. 5)
Negative floating point number uint(-5.78) truncates to integer then applies rule for negative integers
Negative integer uint(-5) sum of uint.MAX_VALUE and the negative integer (e.g. uint.MAX_VALUE + (-5))
true uint(true) 1
false uint(false) 0
Empty String uint("") 0
String that converts to Number uint("5") See rules for Numbers in this table
String that does not convert to Number uint("5a") 0

Parameters
value:Number — A value to be converted to an integer.

Returns
uint — The converted integer value.

See also
int()
unescape function

public function unescape(str:String):String

Evaluates the parameter str as a string, decodes the string from URL-encoded format (converting all hexadecimal sequences to ASCII characters), and returns the string.

Parameters
str:String — A string with hexadecimal sequences to escape.

Returns
String — A string decoded from a URL-encoded parameter.
XML function

public function XML(expression:Object):XML

Converts an object to an XML object.

The following table describes return values for various input types.

Parameter Type Return Value
Boolean Value is first converted to a string, then converted to XML.
Null A runtime error occurs (TypeError exception).
Number Value is first converted to a string, then converted to XML.
Object Converts to XML only if value is a String, Number or Boolean. Otherwise a runtime error occurs (TypeError exception).
String Value is converted to XML.
Undefined A runtime error occurs (TypeError exception).
XML Input value is returned unchanged.
XMLList Returns an XML object only if the XMLList contains only one property of type XML. Otherwise a runtime error occurs (TypeError exception).

Parameters
expression:Object — Object to be converted to XML.

Returns
XML — An XML object containing values held in the converted object.

See also
XMLList()
XMLList function

public function XMLList(expression:Object):XMLList

Converts an object to an XMLList object, as described in the following table.
Parameter Type Return Value
Boolean Value is first converted to a string, then converted to XMLList.
Null A runtime error occurs (TypeError exception).
Number Value is first converted to a string, then converted to XMLList.
Object Converts to XMLList only if value is a String, Number or Boolean. Otherwise a runtime error occurs (TypeError exception).
String Value is converted to an XMLList object.
Undefined A runtime error occurs (TypeError exception).
XML Value is converted to an XMLList object.
XMLList Input value is returned unchanged.

Parameters
expression:Object — Object to be converted into an XMLList.

Returns
XMLList — An XMLList object containing values held in the converted object.

See also
XML()