Les types de variables
Dans le langage de programmation de Flash, l'actionScript, les variables déclarées sont automatiquement du type approprié à leur contenu. On parle alors de déclaration implicite, contrairement à la déclaration explicite où il faut absolument déclarer une variable de type adéquat avant d'y enregistrer une donnée.
Il existe 6 types de variable différents en actionScript :
Pour attribuer une valeur à une variable de type chaîne, il existe différentes méthodes. La plus simple consiste à écrire simplement :
ma_variable = "Hello world";
On peut aussi utiliser l'apostrophe, cela donne :
ma_variable = 'Hello world';
La troisième façon consiste à faire :
ma_variable = new String("Hello world");
Donc, on peut utiliser les guillements ou les apostrophes pour désigner la chaîne de caractères, mais il faut absolument terminer l'attribution par le même caractère. Exemple :
ma_variable = "Hello world";
et
ma_variable = 'Hello world';
sont correctes, alors que
ma_variable = "Hello world';
provoquera une erreur. Si l'on désire insérer des guillemets alors qu'on utilise les guillemets comme délimiteur de chaîne, il faut “échaper” le caractère des guillements avec l'anti-slash.
Exemple :
ma_variable = "Hello \"world\"";
ce qui générera la chaîne Hello “world”.
Il existe 2 sous-types dans les nombres : les entiers et les nombres à virgule. Chez les entiers, il existe encore plusieurs représentation d'un nombre. En effet, on a l'habitude d'utiliser la base 10, c'est à dire une représentation à 10 chiffres (0123456789), mais en actionScript, il est aussi possible d'utiliser les bases 8 et 16. Mais il faut bien que Flash fasse la différence entre ces différentes bases, alors les premiers chiffres deviennent déterminants.
Par exemple :
ma_variable = 123;ma_variable = 0123;
Il est donc impossible d'utiliser les chiffres 8 et 9 pour cette base.
ma_variable = 0x123;
Chez les nombres à virgule, il y a les float et les double, qui sont toujours représentés en base 10. La différente entre ses 2 types, c'est qu'un float ne peut représenter un nombre de plus de 15 chiffres avant la virgule contrairement à un double. Donc pour représenter plus de 999999999999999, on est obligé d'utiliser des doubles.
Exemple : 1500 est égal à 1.5e+3. On peut comprendre e comme une multiplication d'une puissance de 10. Dans cet exemple, c'est 10 puissance 3.
Le nombre maximum est approximativement égal à 1.79e+308 et le minimum à 5e-324. Au delà de cet interval, Flash considère le nombre comme infini négatif ou positif.
La petite description du début en dit déjà assez. En effet, un booléen ne peut contenir comme valeur, que vrai ou faux. On représente ces valeurs respectivement par true ou false. Mais il est aussi possible d'utiliser 1 ou 0, car un booléen est encodé sur un bit (ne pas confondre avec byte qui est équivalent à octet). Le booléen est le type de variable qui demande le moins d'emplacement mémoire (difficile de faire plus petit qu'un bit …).
En actionScript, il est possible de créer des fonctions, par exemple :
function ma_fonction(){ // expressions }
Il est aussi possible de la créer comme ci-dessous sous flash MX:
ma_variable = function() { // expressions }
Cet exemple montre bien qu'une variable peut être de type fonction.
C'est un type propre à Flash que je ne développerais pas ici.
Les objets, on en voit partout dans Flash. Un objet peut contenir lui même des variables de tout type sauf movieClip. Un objet peut lui même contenir un objet. On peut se dire qu'un objet est un contenant et les variables sont le contenu. L'objet doit d'abord être déclaré dans Flash
Exemples :
ma_variable = new Object(); ma_variable.ma_sous_variable = "Hello world";
On peut aussi créer un objet comme ci-dessous :
ma_variable = {};
On n'a pas besoin de déclarer un objet s'il devient une copie d'un autre :
ma_variable = {}; ma_variable2 = ma_variable;
Les objets particuliers que l'on peut remarquer, ce sont les tableaux ou Array(). En effet, la différence notable avec un objet normal, c'est qu'un tableau est ordonné.
Exemple :
ma_variable = new Array(); ma_variable[0] = "Hello world"; ma_variable[1] = "Bonjour";
Notons qu'il est aussi nécessaire de déclarer le tableau avant son utilisation, comme un objet.
On remarque aussi qu'un tableau s'indexe à partir de zero.
On peut aussi déclarer un tableau comme ci-dessous :
ma_variable = new Array("Hello world", "Bonjour");
ou
ma_variable = [];
ou encore
ma_variable = ["Hello world", "Bonjour"];
L'intérêt d'un tableau, c'est qu'il permet le triage de données.
Il y a d'autres objets possédant des fonctions spécifiques qui sont inclus dans Flash, comme par exemple les objets Math, Date ou encore loadVars. Se référer à l'aide pour de plus amples informations.
Dernière remarque
Pour finir, on peut connaitre le type d'une variable avec la commande typeof()
Exemple :
ma_variable = "Hello World"; trace(typeof(ma_variable));
On obtient dans le panneau Sortie de flash : string
Pour toute question au sujet de ce tutorial veuillez utiliser les salles du forum merci.
NeoLao.
Encore des questions? Besoin d'aide? Venez en discuter sur le forum Programmation Actionscript.