Undefined
Most
of the datatypes we’ve explored
so far have been used for storing and manipulating information. The
undefined datatype has a more narrow purpose: it
is used to check whether a variable exists or whether a variable has
yet been assigned a value. The undefined
datatype has only one legal value, the primitive value
undefined.
When we first define a variable, it is assigned the value
undefined by default:
var velocity;
To the interpreter, the preceding statement reads:
var velocity = undefined;
To check whether a variable has a value, we can compare the variable
to undefined, as in:
if (myVariable != undefined) {
// myVariable has a value, so proceed as desired...
}Note that an undefined value is converted to the
empty string when used as a string. For example, if
firstName is undefined, the
following trace( ) statement will display
"" (the empty string):
var firstName; trace(firstName); // Displays nothing (the empty string)
This same code in JavaScript would display the string
“undefined” instead of the empty string. ActionScript
converts undefined to "" for
the sake of backward compatibility.
Because there was no undefined type in Flash 4 ActionScript, many Flash 4 programs used the empty string to check whether a variable had a useful value. Code like this was common:
if (myVar eq "") {
// Don't do anything yet: myVar is undefined
}If Flash 5 converted undefined to anything other
than "" in a string context, old code like that
would break in the Flash 5 player.
Note that ActionScript ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access