User Guide

eval() 295
eval()
Availability
Flash Player 5 or later for full functionality. You can use the eval() function when exporting to
Flash Player 4, but you must use slash notation and can access only variables, not properties
or objects.
Usage
eval(expression:String) : Object
Parameters
expression
A string containing the name of a variable, property, object, or movie clip
to retrieve.
Returns
A value, reference to an object or movie clip, or undefined.
Description
Function; accesses variables, properties, objects, or movie clips by name. If expression is a
variable or a property, the value of the variable or property is returned. If
expression is an object
or movie clip, a reference to the object or movie clip is returned. If the element named in
expression cannot be found, undefined is returned.
In Flash 4,
eval() was used to simulate arrays; in Flash 5 or later, you should use the Array class
to simulate arrays.
In Flash 4, you can also use
eval() to dynamically set and retrieve the value of a variable or
instance name. However, you can also do this with the array access operator (
[]).
In Flash 5 or later, you cannot use
eval() to dynamically set and retrieve the value of a variable or
instance name, because you cannot use
eval() on the left side of an equation. For example,
replace the code
eval ("var" + i) = "first";
with this:
this["var"+i] = "first"
or this:
set ("var" + i, "first");
Example
The following example uses eval() to set properties for dynamically named movie clips. This
ActionScript sets the
_rotation property for three movie clips, called square1_mc, square2_mc,
and
square3_mc.
for (var i = 1; i<=3; i++) {
setProperty(eval("square"+i+"_mc"), _rotation, 5);
}
CHAPTER 2
ActionScript Language Reference