Data type descriptions
A data type defines a set of values. For example, the Boolean data type is the set of exactly two values:true and false.
In addition to the Boolean data type, ActionScript 3.0 defines several
more commonly used data types, such as String, Number, and Array. You
can define your own data types by using classes or interfaces to define
a custom set of values. All values in ActionScript 3.0, whether they
are primitive or complex, are objects.A primitive value is a value that belongs to one of the following data types: Boolean, int, Number, String, and uint. Working with primitive values is usually faster than working with complex values, because ActionScript stores primitive values in a special way that makes memory and speed optimizations possible.
A complex value is a value that is not a primitive value. Data types that define sets of complex values include Array.
For the purposes of fusionplayer's API we will just document the relevent data types.
true and false.
No other values are valid for variables of Boolean type. The default
value of a Boolean variable that has been declared but not initialized
is false.Reference:
ActionScript 3.0 Language and Components Reference: Boolean
[0], the second element is [1], and so on. To create an Array object, you use the new Array() constructor . Array() can also be
invoked as a function. In addition, you can use the array access ([]) operator to initialize an array or access the elements of an array.Reference:
ActionScript 3.0 Language and Components Reference: Array
null. The value null is not the same as the empty string (""), even though they both represent the absence of any characters.Reference:
ActionScript 3.0 Language and Components Reference: String
The int data type is stored internally as a 32-bit integer and comprises the set of integers from
-2,147,483,648 (-231) to 2,147,483,647 (231
- 1), inclusive. Previous versions of ActionScript offered only the
Number data type, which was used for both integers and floating-point
numbers. In ActionScript 3.0, you now have access to low-level machine
types for 32-bit signed and unsigned integers. If your variable will
not use floating-point numbers, using the int data type instead of the
Number data type should be faster and more efficient.
For integer values outside the range of the minimum and maximum int values, use the Number data type, which can handle values between positive and negative 9,007,199,254,740,992 (53-bit integer values). The default value for variables that are of the data type int is 0.
Reference:
In ActionScript 3.0, the Number data type can represent integers,
unsigned integers, and floating-point numbers. However, to maximize
performance, you should use the Number data type only for integer
values larger than the 32-bit int and uint
types can store or for floating-point numbers. To store a
floating-point number, include a decimal point in the number. If you
omit a decimal point, the number will be stored as an integer.
The Number data type uses the 64-bit double-precision format as specified by the IEEE Standard for Binary Floating-Point Arithmetic (IEEE-754). This standard dictates how floating-point numbers are stored using the 64 available bits. One bit is used to designate whether the number is positive or negative. Eleven bits are used for the exponent, which is stored as base 2. The remaining 52 bits are used to store the significand (also called the mantissa), which is the number that is raised to the power indicated by the exponent.
By using some of its bits to store an exponent, the Number data type can store floating-point numbers significantly larger than if it used all of its bits for the significand. For example, if the Number data type used all 64 bits to store the significand, it could store a number as large as 265 - 1. By using 11 bits to store an exponent, the Number data type can raise its significand to a power of 21023.
The maximum and minimum values that the Number type can represent are stored in static properties of the Number class called Number.MAX_VALUE and Number.MIN_VALUE.
Number.MAX_VALUE == 1.79769313486231e+308
Number.MIN_VALUE == 4.940656458412467e-324
Although this range of numbers is enormous, the cost of this range is precision. The Number data type uses 52 bits to store the significand, with the result that numbers that require more than 52 bits to represent precisely, such as the fraction 1/3, are only approximations. If your application requires absolute precision with decimal numbers, you need to use software that implements decimal floating-point arithmetic as opposed to binary floating-point arithmetic.
When you store integer values with the Number data type, only the 52 bits of the significand are used.
The Number data type uses these 52 bits and a special hidden bit to represent integers from -9,007,199,254,740,992 (-253) to 9,007,199,254,740,992 (253).
Flash Player uses the NaN value not only as the default value for variables of type Number,
but also as the result of any operation that should return a number but
does not. For example, if you attempt to calculate the square root of a
negative number, the result will be NaN. Other special Number values include positive infinity and negative infinity.
Reference:
ActionScript 3.0 Language and Components Reference: Number
undefined. In previous versions of ActionScript, undefined was the default value for instances of the Object class. In ActionScript 3.0, the default value for Object instances is null. If you attempt to assign the value undefined to an instance of the Object class, Flash Player will convert the value to null. You can only assign a value of undefined to variables that are untyped. Untyped variables are variables that either lack any type annotation, or use the asterisk (*) symbol for type annotation. You can use void only as a return type annotation.
null. This is
the default value for the String data type and all classes that define
complex data types, including the Object class. None of the other
primitive data types, such as Boolean, Number, int and uint, contain
the value null. Flash Player will convert the value null to the appropriate default value if you attempt to assign null to variables of type Boolean, Number, int, or uint. You cannot use this data type as a type annotation.