On appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instructions par simple appel dans le corps du programme principal. Cette notion de sous-programme est généralement appelée fonction (ou procédure) dans la plupart des langages de programmation. VBScript distingue deux types de procédures :
Les procédures permettent d'exécuter dans plusieurs parties du programme une série d'instructions, 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...).
VBScript 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 procédure Sub doit être définie car pour l'appeler dans le corps du programme il faut que l'environnement la connaisse, c'est-à-dire qu'il connaisse son nom, ses arguments et les instructions qu'elle contient. La définition d'une procédure s'appelle "déclaration".
La déclaration d'une procédure Sub se fait entre les insctructions Sub et End Sub selon la syntaxe suivante :
Sub Nom_De_La_Procedure(argument1, argument2, ...) liste d'instructions End Sub
Remarques:
Une fois cette étape franchie, votre procédure ne s'exécutera pas tant que l'on ne fait pas appel à elle quelque part dans le script !
Une procédure Function est similaire à une procédure Sub, à la différence près qu'elle peut retourner une valeur.
La déclaration d'une procédure Function se fait entre les insctructions Function et End Function selon la syntaxe suivante :
Function Nom_De_La_Procedure(argument1, argument2, ...) Liste d'instructions End Function
La procédure Function peut renvoyer une valeur, de type Variant en affectant une valeur dans une ou plusieurs de ses instructions à une valable possédant le même nom qu'elle.
La fonction suivante convertit par exemple en euros le prix passé en argument en francs :
Function FrancEuro(prix) FrancEuro = prix / 6.55957 End Function
Pour exécuter une fonction, il suffit de faire appel à elle en écrivant son nom (une fois de plus en respectant la casse) suivi d'une parenthèse ouverte (éventuellement des arguments) puis d'une parenthèse fermée :
Nom_De_La_Fonction()
L'appel d'une procédure se fait de la manière suivante :
Call Nom_De_La_Procedure()
Il est également possible d'appeler une procédure comme suit :
Nom_De_La_Procedure arguments
Remarques:
Veillez toujours à ce qu'une fonction soit déclarée avant d'étre appelée, sachant que l'interpréteur traite le script de haut en bas (Pour éviter des erreurs de ce type on déclare généralement les fonctions en début de script).
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.
Il s'utilise de la manière suivante :
<HTML>
<HEAD>
<SCRIPT language="VBScript">
<!--
function Chargement() {
alert('Bienvenue sur le site');
}
//-->
</SCRIPT>
</HEAD>
<BODY onLoad="Chargement();" >
Code VBScript qui ne sert absolument à rien
si ce n'est déranger vos visiteurs...
</BODY>
</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.
Lorsque vous passez plusieurs paramètres à une fonction il faut les séparer par des virgules,
aussi bien dans la déclaration que dans l'appel et il faudra veiller à bien passer le bon
nombre de paramètres lors de l'appel au risque sinon de créer une erreur dans votre script...
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 dû à la portée des variables, c'est-à-dire si elles ont été définies comme variables globales ou locales.
Résultats pour VBScript Les fonctions et les procédures
Résultats pour VBScript Les fonctions et les procédures
Résultats pour VBScript Les fonctions et les procédures
Résultats pour VBScript Les fonctions et les procédures
Résultats pour VBScript Les fonctions et les procédures