SELFHTML/Quickbar  JavaScript  Éléments du langage


Fonctions

Cette page est un document avec du texte et des informations

 Définir une fonction
 Appeler une fonction
 Fonction avec valeur renvoyée et leur appel
 Fonctions prédéfinies JavaScript

 

JavaScript 1.0Netscape2.0MS IE3.0 Définir une fonction

Avec l'aide de fonctions, vous pouvez programmer vos propres procédures JavaScript autonomes que vous pouvez ensuite exécuter par l'appel de la fonction. Pour cela vous pouvez spécifier lors de quel évènement la fonction doit être appelée et son code programme exécuté (par exemple lorsque l'utilisateur clique un bouton). Le code JavaScript qui ne se trouve pas dans une fonction est exécuté immédiatement par le navigateur WWW à la lecture du fichier!

Une fonction est un  bloc d'instructions. Vous pouvez définir vos propres fonctions dans un  passage JavaScript ou dans un  fichier JavaScript séparé. Aux endroits autorisés, par exemple dans le repère d'ouverture HTML <body...> et <a href...>, ou un repère de formulaire comme <input...>, vous pouvez alors appeler de telles fonctions définies vous-mêmes à l'aide d'un  Event-Handler. Ou bien vous appelez une fonction depuis une autre fonction.

Exemple:

function nombrepremier(nombre)
 {
  var nombrelimite = nombre/ 2;
  var Check = 1;
  for(i = 2; i <= nombrelimite ; i++)
    if(nombre% i == 0)
    {
     alert(nombre+ " n'est pas un nombre premier parce qu'il est divisible par " + i);
     Check = 0;
    }
  if(Check == 1)
   alert(nombre+ " est un nombre premier!");
 }
</script>

Explication:

Avec le mot clé function vous introduisez la définition d'une fonction. Derrière suit, séparé par un espace, un nom de fonction que vous choisissez - dans l'exemple: nombrepremier. Affectez un nom de fonction qui décrit à peu près ce que la fonction fait. Respectez en ce faisant les règles pour les  noms attribués par vous.

Juste derrière le nom de la fonction s'ouvre une parenthèse. Si la fonction ne doit pas attendre de paramètres, la parenthèse doit être refermée aussitôt. Si la fonction doit recevoir des paramètres, notez entre les parenthèses le nom des paramètres. Les noms des paramètres peuvent être librement choisis. Pour les noms de paramètres s'appliquent les mêmes règles que pour les noms de fonction. Plusieurs paramètres doivent être séparés par des virgules. Dans l'exemple ci-dessus, la fonction nombrepremier attend un paramètre nombre.

Tout le contenu de la fonction doit être placé dans des parenthèse accolade { et } (touches Alt 123 et Alt 125). N'ommettez jamais ces parenthèses!

Les instructions dans la fonction peuvent être de natures très diverses. Vous pouvez par exemple y manipuler des  objets, traiter et modifier les paramètres transmis, faire des calculs etc... Vous pouvez également appeler, à l'intérieur de fonctions, d'autres fonctions. Quelles instructions se trouvent dans une fonction, dépend de ce que doit faire la fonction. Dans l'exemple ci-dessus il est recherché si le nombre transmis est un nombre premier. Si ce n'est pas un nombre premier, une annonce correspondante apparaîtra pour chaque nombre par lequel il est divisible. Si c'est un nombre premier, une annonce signalera qu'il s'agit d'un nombre premier.

 

JavaScript 1.0Netscape2.0MS IE3.0 Appeler une fonction

exemple Exemple d'affichage: aperçu

Vous pouvez appeler une fonction définie vous-même pour exécuter le code JavaScript qu'elle contient.

Exemple:

<html>
<head>
<title>Vérifier un nombre s'il est premier</title>
<script language="JavaScript">
<!--
function nombrepremier(nombre)
 {
  var nombrelimite = nombre/ 2;
  var Check = 1;
  for(i = 2; i <= nombrelimite ; i++)
    if(nombre% i == 0)
    {
     alert(nombre + " n'est pas un nombre premier parce qu'il est divisible par " + i);
     Check = 0;
    }
  if(Check == 1)
   alert(nombre + " est un nombre premier!");
 }
//-->
</script>
</head>
<body>
<form name="formnombrepremier">
Entrez un chiffre il va être vérifié s'il est premier:<br>
<input type=text name="nombreentre">
<input type=button value="Est-ce un nombre premier?"
onClick="nombrepremier(document.formnombrepremier.nombreentre.value)">
</form>
</body>
</html>

Explication:

L'exemple ci-dessus montre un fichier HTML complet où un  passage JavaScript est défini. La fonction nombreentier() y est définie. Dans le corps du fichier HTML se trouve un formulaire avec un champ de saisie et un bouton. Dans le champ de saisie, l'utilisateur peut entrer un chiffre. S'il clique sur le bouton, la fonction JavaScript est appelée et recherche si le nombre entré est un nombre entier. Pour cela, le bouton contient l'  Event-Handler onClick= (= en cliquant). Derrière, la fonction JavaScript est appelée avec le nombre entré.

Vous appelez la fonction avec le nom de la fonction. Derrière une parenthèse est ouverte. Si la fonction n'attend pas de paramètre, refermez tout de suite la parenthèse. Si la fonction attend un paramètre vous devez transmettre pour chaque paramètre une valeur permise.

 

JavaScript 1.0Netscape2.0MS IE3.0 Fonction avec valeur renvoyée et leur appel

exemple Exemple d'affichage: aperçu

Une fonction peut renvoyer une valeur recherchée à l'instance qui l'appelle.

Exemple:

<html>
<head>
<title>Calculer le montant brut d'après le montant net</title>
<script language="JavaScript">
<!--
    function montantbrut(Net, pourcent)
     {
      var resultat = Net * (1 + (pourcent/ 100));
      return resultat ;
     }

    function donnebrut(montant, pourcent)
     {
      var valeur;
      valeur= montantbrut(montant, pourcent);
      document.formbrut.champresultat.value = valeur;
     }
//-->
</script>
</head>
<body>
<form name="formbrut">
Montant net: <input type=text name="montantnet"><br>
Pourcentage: <input type=text name="pourcentage"><br>
<p>Entrez les chiffres décimaux avec un point!</p>
<input type=button value="Calculer le brut"
onClick="donnebrut(document.formbrut.montantnet.value,document.formbrut.pourcentage.value)">
<p>
resultat : <input type=text name="champresultat">
</form>
</body>
</html>

Explication:

L'exemple ci-dessus montre un fichier HTML complet dans lequel est défini un  passage JavaScript. Dans celui-ci sont définies deux fonctions montantbrut(...) et donnebrut(...). Dans le corps du fichier HTML se trouve un formulaire avec un champ de saisie pour le montant net et un autre pour le pourcentage. Quand l'utilisateur clique sur le bouton défini au dessous, la fonction donnebrut (...) est appelée. Elle appelle elle même la fonction montantbrut(...).

Étant donné que la fonction montantbrut(...) renvoie le résultat calculé à l'instance qui l'a appelée, une  variable du nom de valeur est définie dans donnebrut(...) et dans laquelle la valeur renvoyée est sauvegardée. Le résultat sauvegardé dans cette variable est écrit par la fonction dans un champ installé à cet effet dans le formulaire: le champ de saisie du nom de champresultat.

 

JavaScript 1.0Netscape2.0MS IE3.0 Fonctions prédéfinies JavaScript

Il existe quelques fonctions qui sont déjà intégrées dans JavaScript. Ces fonctions peuvent être appelées sans que vous ayez à les définir vous-même.

Exemple:

<html>
<head>
<title>Calculer le montant brut d'après le montant net</title>
<script language="JavaScript">
<!--
    function Simple()
     {
      var resultat = eval("1+1");
      alert("1 + 1 = " + resultat);
     }
//-->
</script>
</head>
<body>
<a href="javascript:Simple()">Combien font 1+1?</a>
</body>
</html>

Explication:

L'exemple ci-dessus montre un fichier HTML complet. Y est défini un  passage JavaScript, dans lequel une fonction Simple() est définie. Dans le corps du fichier HTML se trouve un lien. En cliquant sur ce lien, la fonction est appelée. Elle renvoie le résultat de 1+1 dans une boite de dialogue. Pour le calcul du résultat la fonction standard JavaScript eval(...)a été appelée (eval = evaluate = calcule).

Attention:

La syntaxe pour appeler des fonctions JavaScript dans des liens est approfondie dans les  Event-Handler.

Une vue d'ensemble de toutes les fonctions Standard JavaScript se trouve dans la partie  fonctions indépendantes de l'objet.

après: Caractères de commande et notations particulières
avant: Objets, propriétés et méthodes
 

SELFHTML/Quickbar  JavaScript  Éléments du langage

© 1998 Stefan Münz / © 2001 Traduction  Serge François, 13405@free.fr