On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instruction par simple appel de la fonction dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction dans les langages autres que le Javascript (touefois leur syntaxe est généralement différente...). Les fonctions et les permettent d'exécuter dans plusieurs parties du programme une série d'instruction, cela permet une simplicité du code et donc une taille de programme minimale. D'autre part, une fonction peut faire appel à elle-même, on parle alors de fonction récursive (il ne faut pas oublier de mettre une condition de sortie au risque sinon de ne pas pouvoir arrêter le programme...). Javascript contient des fonctions prédéfinies qui peuvent s'appliquer pour un ou plusieurs types d'objets spécifiques, on appelle ces fonctions des méthodes.
Avant d'être utilisée, une fonction doit être définie car pour l'appeler dans le corps du programme il faut que le navigateur la connaisse, c'est-à-dire qu'il connaisse son nom, ses arguments et les instructions qu'elle contient. La définition d'une fonction s'appelle "déclaration". La déclaration d'une fonction se fait grâce au mot clé function selon la syntaxe suivante: function
Nom_De_La_Fonction(argument1, argument2, ...) { Remarques:
Pour exécuter une fonction, il suffit de faire appel à elle en écrivant son nom (une fois de plus en respectant la casse) suivie d'une parenthèse ouverte (éventuellement des arguments) puis d'une parenthèse fermée: Nom_De_La_Fonction(); Remarques:
Grâce au gestionnaire d'évènement onLoad (à
placer dans la balise BODY) il est possible d'exécuter une fonction
au chargement de la page, comme par exemple l'initialisation des
variables pour votre script, et/ou le test du navigateur pour savoir
si celui-ci est apte à faire fonctionner le script. <HTML>
Il est possible de passer des paramètres à une
fonction, c'est-à-dire lui fournir une valeur ou le nom d'une
variable afin que la fonction puisse effectuer des opérations sur
ces paramètres ou bien grâce à ces paramètres. Imaginons que l'on veuille créer une page Web qui
affiche une boîte de dialogue (les boîtes de dialogues sont à éviter
dans vos pages car elles sont énervantes, mais c'est toutefois une
manière simple d'apprendre le Javascript) qui affiche un texte
différent selon le lien sur lequel on appuie. <HTML>
Ce qui donne ceci: Il existe toutefois une methode plus "classe" qui consiste à créer une fonction qui a comme paramètre le texte à afficher: <HTML>
Ce qui donne ceci: Résultat: Aucune différence visuellement mais vous n'avez plus qu'une seule fonction qui peut vous afficher n'importe quel texte...
Lorsque vous manipulerez des variables dans des fonctions, il vous arrivera de constater que vous avez beau modifier la variable dans la fonction celle-ci retrouve sa valeur d'origine dès que l'on sort de la fonction... Cela est du à la portée des variables, c'est-à-dire si elles ont été définies comme variables globales ou locales.
Lorsque vous faîtes appel à une fonction à partir d'un objet, par exemple un formulaire, le mot clé this fait référence à l'objet en cours et vous évite d'avoir à définir l'objet en tapant window.objet1.objet2... ainsi lorsque l'on passe l'objet en cours en paramètre d'une fonction, il suffit de taper nom_de_la_fonction(this) pour pouvoir manipuler cet objet à partir de la fonction. Pour manipuler les propriétés de l'objet il suffira de taper this.propriete (où propriete représente bien sûr le nom de la propriété).
Les navigateurs ont leurs propres objets avec leur
propriétés respectives. Il est toutefois possible de créer ses
propres objets avec les propriétés qu'on leur définit.
Il est possible de créer l'objet Arbre en créant une fonction dont le nom est Arbre et qui définit les propriétés de l'objet en cours grâce au mot-clé this, en passant en paramètre chacune des propriétés: function Arbre(Type, Taille,
Age) { Grâce au mot-clé new, il va être possible de
créer des instances de l'objet Arbre (c'est-à-dire des objets
possédant les propriétés de l'objet Arbre): Il est de plus possible d'ajouter un objet existant en tant que propriété d'un autre objet. Imaginons que vous créiez un objet proprietaire: function Proprietaire(Nom,
Prenom) { Définissons maintenant l'objet Arbre comme suit: function Arbre(Type, Taille,
Age, Proprietaire) { Il est alors possible de trouver le nom du
propriétaire d'un arbre:
Ce document issu de CommentCaMarche.net est soumis à la licence GNU FDL. Permission vous est donnée de distribuer, modifier des copies de cette page tant que cette note apparaît clairement. |