Flash Lite 2 |
|||
| Guide de référence du langage ActionScript Flash Lite 2.x > Eléments du langage ActionScript > Fonctions globales > Fonction eval | |||
eval(expression:Object) : Objecteval(expression:String) : Object
Accède aux variables, propriétés, objets ou clips en fonction de leur nom. Lorsque l'expression est une variable ou une propriété, la fonction renvoie la valeur de cette variable ou de cette propriété. Si l'expression est un objet ou un clip, la fonction renvoie une référence de l'objet ou du clip. Si l'élément nommé dans l'expression est introuvable, la fonction renvoie undefined.
Sous Flash 4, eval() permettait de simuler des tableaux ; à partir de Flash 5, vous devez utiliser la classe Array pour ce faire.
Sous Flash 4, vous pouvez également utiliser eval() pour définir de façon dynamique la valeur d'une variable ou d'un nom d'occurrence et l'extraire. Cette opération est également possible avec l'opérateur de tableau ([]).
A partir de Flash 5, vous ne pouvez plus recourir à eval() pour définir de façon dynamique et extraire la valeur d'une variable ou d'un nom d'occurrence, car vous ne pouvez pas utiliser eval() dans la partie gauche d'une équation. Par exemple, remplacez le code
eval ("var" + i) = "first";
par :
this["var"+i] = "first"
ou par :
set ("var" + i, "first");
Disponibilité : ActionScript 1.0 ; Flash Lite 1.0 - Flash Player 5 ou plus récent pour disposer de toutes les fonctionnalités. Vous pouvez utiliser la fonction eval() lors de l'exportation vers Flash Player 4, mais vous ne pouvez pas appliquer la notation avec barre oblique. Vous pouvez uniquement accéder aux variables, vous ne pouvez pas accéder aux propriétés ou objets.
expression:Object - Le nom d'une variable, d'une propriété, d'un objet ou d'un clip à extraire. Ce paramètre peut être de type String ou une référence directe à l'occurrence d'objet (les guillemets (" ") sont facultatifs.)
Object - Une valeur, une référence à un objet ou un clip, ou undefined.
L'exemple suivant utilise eval() pour définir les propriétés des clips nommés de façon dynamique. Ce code ActionScript définit la propriété _rotation de trois clips intitulés square1_mc, square2_mc et square3_mc.
for (var i = 1; i <= 3; i++) {
setProperty(eval("square"+i+"_mc"), _rotation, 5);
}
Vous pouvez également utiliser le code ActionScript suivant :
for (var i = 1; i <= 3; i++) {
this["square"+i+"_mc"]._rotation = -5;
}
Array, Instruction set variable