set variable statement

set("variableString",expression)

Assigns a value to a variable. A variable is a container that holds data. The container is always the same, but the contents can change. By changing the value of a variable as the SWF file plays, you can record and save information about what the user has done, record values that change as the SWF file plays, or evaluate whether a condition is true or false.

Variables can hold any data type (for example, String, Number, Boolean, Object, or MovieClip). The Timeline of each SWF file and movie clip has its own set of variables, and each variable has its own value independent of variables on other Timelines.

Strict data typing is not supported inside a set statement. If you use this statement to set a variable to a value whose data type is different from the data type associated with the variable in a class file, no compiler error is generated.

A subtle but important distinction to bear in mind is that the parameter variableString is a string, not a variable name. If you pass an existing variable name as the first parameter to set() without enclosing the name in quotation marks (""), the variable is evaluated before the value of expression is assigned to it. For example, if you create a string variable named myVariable and assign it the value "Tuesday," and then forget to use quotation marks, you will inadvertently create a new variable named Tuesday that contains the value you intended to assign to myVariable:

var myVariable:String = "Tuesday"; 
set (myVariable, "Saturday"); 
trace(myVariable); // outputs Tuesday 
trace(Tuesday); // outputs Saturday

You can avoid this situation by using quotation marks (""):

set ("myVariable", "Saturday");
trace(myVariable); //outputs Saturday

Availability: ActionScript 1.0; Flash Lite 2.0

Parameters

variableString:String - A string that names a variable to hold the value of the expression parameter.

Example

In the following example, you assign a value to a variable. You are assigning the value of "Jakob" to the name variable.

set("name", "Jakob"); 
trace(name);

The following code loops three times and creates three new variables, called caption0, caption1, and caption2:

for (var i = 0; i < 3; i++) { 
 set("caption" + i, "this is caption " + i); 
} 
trace(caption0); 
trace(caption1); 
trace(caption2);

See also

var statement