Premiers pas en JavaScript
10.2 Fonction appel réciproque
cuy copyleft
  See You Why?  

 


fonctions imbriquees (10.1) | | exercices sur les fonctions imbriquées (10.8)

Contenu


JavaScript 1 - Introduction
JavaScript 2 - Commentaires et instructions
JavaScript 3 - Variables
JavaScript 4 - Types de variables
JavaScript 5 - Variables et chaines
JavaScript 6 - Les fonctions
JavaScript 7 - Les fonctions à paramètre unique
JavaScript 8 - Les fonctions à paramètres multiples
JavaScript 9 - L'instruction RETURN dans une fonction
JavaScript 10 - Appel d'une fonction dans une autre fonction
10.1 JS : Fonction qui appelle une autre fonction
10.2 JS : Première boucle involontaire
10.8 JS : un test sur les fonctions imbriquées
10.9 JS : un test sur les fonctions imbriquées
JavaScript 11 - Les variables locales ou globales
JavaScript 12 - Quelques opérateurs mathématiques
JavaScript 13 - ???
JavaScript 14 - L'instruction IF, pour les conditions
JavaScript 15 - L'instruction IF... ELSE..., pour les conditions à deux sorties
JavaScript 16 - Les IF imbriqués et fonction aléatoire
JavaScript 17 - Les conditions complexes
JavaScript 18 - L'instruction SWITCH, en cas de choix multiples
JavaScript 19 - La boucle FOR
JavaScript 20 - La boucle WHILE
JavaScript 21 - Les événements dans la programmation
JavaScript 22 - Quelques événements : onMouseOver onLoad etc.
JavaScript 23 - Les objets
JavaScript 24 - Créer ses propres objets
JavaScript 25 - Appliquer des méthodes à ses objets
JavaScript 26 - Les tableaux
JavaScript 27 - Différentes façons de créer des tableaux
JavaScript 28 - Propriétés et méthodes applicables aux tableaux
JavaScript 29 - Les méthodes applicables aux tableaux
JavaScript 30 - Méthodes de tris pour tableaux SORT, REVERSE et PUSH
JavaScript 31 - Ajouter des éléments à un tableau en utilisant une boucle
JavaScript 32 - Tecnique pour imprimer les éléments d'un tableau
JavaScript 33 - Lecture de bases de données
JavaScript 34 - Les objets mathématiques
JavaScript 35 - Les objets relatifs aux dates
JavaScript 36 - Les formulaires JS sont des objets
JavaScript 37 - Accès aux éléments d'un formulaire
JavaScript 38 - Validation des entrées d un formulaire
JavaScript 39 - Graphisme et JavaScript

JavaScript 50 - Calculateur d'emprunt
JavaScript 51 - Calendrier perpétuel et options diverses
JavaScript 99 - Documentation


 
 

 
Avec un peu de JavaScript,
n'oubliez pas de rendre vos pages
plus dynamiques et plus interactives.
 

 
 

 
Notre volonté est de rendre cette formation de JavaScript,
disponible le plus rapidement possible.
Le lecteur excusera l'imperfection de ce travail en cours de construction
et pourrait nous informer des défauts rencontrés.

  MERCI
 

 

 

I. Appel d'une Fonction dans une fonction

voir < < < section précédente

 

II. Appel réciproque

Dans la section précédente, nous avons signalé la facilité avac laquelle une fonction peut en appeler une autre et le risque que le serpent se morde la queue : les boucles involontaires sont fréquentes. J'appelle une fonction, qui en appelle une autre, qui elle-même en appelle une troisième... mais si cette troisième appelle la première, la boucle est bouclée... et tant que nous n'aurons pas étudié les conditions ou les boucles volontaires... gare aux ronds-points dans lesquels on peut entrer sans pouvoir en sortir...

Illustrons ce propos par un exemple plus simple.
Deux fonctions suffisent... pourquoi pas celles que nous venons d'utiliser.
La fonction premiere() peut comporter un appel de la fonction seconde() et
la fonction seconde() peut comporter un appel de la fonction premiere().

Attention encore, ici deux déclarations de fonctions, mais aucun appel dans la racine de votre code. Il ne vous reste qu'à appeler l'une des 2 fonctions qui appellera l'autre, qui appellera la précédente, qui appellera... (j'arrête, sinon je remplirai facilement la page ;o) je vous laisse cependant le soin d'essayer puis d'éditer le code ci-dessous et d'ajouter un appel à l'une des fonctions premiere() ou seconde()dans la racine de votre code [pour vous aider, je l'ai noté en commentaires, il suffit d'enlever le double slash] :

Patience... selon votre ordinateur, sa vitesse de travail, sa mémoire vive (RAM) et sa mémoire virtuelle (dépendant de la place libre sur votre disque dur), vous pourriez attendre quelques minutes à plusieurs heures sans rien voir s'afficher :-((
Éditez la source comme indiqué et là, au moins, vous le verrez travailler :-))
jusqu'au moment où il abandonnera...
 

Exemple

<html>
<head><title>boucle involontaire</title></head>
<body>
<script type="text/javascript">

function premiere() {
        document.write("premiere etape<br>");
        seconde();

}

function seconde() {
        document.write("seconde etape<br>");
        premiere();
}

 
</script>
</body>
</html>


Après cette modification, vous pensez que votre ordinateur est entré dans une boucle sans fin... heureusement la technique prévient ce genre d'erreur et votre ordi s'arrêtera... après combien de boucles parcourues ? Cela dépendra de votre équipement et de sa configuration.

Si vous voulez le savoir, je vous propose les quelques modifications suivantes :
1.- dans la racine, avant l'appel de la fonction, insérer un compteur
     (sans oublier le ; de fin d'instruction)
     var i=0;
2.- dans la fonction premiere(), incrémenter ce compteur en écrivant
      i++; avant l'appel de la fonction seconde() , (sans oublier le ; de fin d'instruction) ;
3.- dans la fonction seconde(), écrire la valeur de i, en notant
      document.write(i); avant l'appel de la fonction premiere()
     (aussi sans oublier le ; de fin d'instruction).
[ici aussi, pour vous aider, je l'ai noté en commentaires, il suffit d'enlever 3 fois un double slash]

Si vous avez suivi scrupuleusement les instructions données ci-dessus, et que vous exécutez le programme, vous venez de découvrir à quelle vitesse travaille un ordinateur (malgré que le JS soit interprété et non compilé, donc lent), mais de plus :

 

Prêt pour la suite du cours ? Vous venez de découvrir comment créer et appeler les fonctions, qu'elles soient à paramètres multiples ou unique, avec instruction RETURN ou sans, voire qu'elles s'appellent l'une l'autre (avec les risques de boucles involontaires).

Comme promis, notre prochain chapitre traitera des variables globales et locales que vous venez de découvrir dans ce chapitre.

 

 

III.

voir suite >>>

 

VIII. Exercices relatifs aux fonctions imbriquées

voir suite >>>

 

 

IX. Test relatif aux fonctions imbriquées

voir suite >>>

 

 


fonctions imbriquees (10.1) | | exercices sur les fonctions imbriquées (10.8)

 

 

Merci de votre visite à partir de :

Vous êtes sur :
https://cuy.be/cours/jvs/jvs_102_appel_reciproque.html

partager sur FaceBook...           consulter sur FaceBook...

 

copyleft
Des liens ne fonctionnent plus ?
Avez-vous des suggestions ?
des commentaires, des corrections, un encouragement... ?
Pour info : Non, il n'y a pas de version papier ou DOC, PDF, etc. de ces notes.


Envoyez-moi un E-Mail (cuy(point)w(at)skynet(point)be)

Attention (at) signifie @ et (point) signifie .

Accueil CUY = See you why?

Compteur gratuitEasyCounter     BelStat Monitored by BelStat - Your Site Counts
La 1 000 000e page a été visitée le 21 mai 2010.
La 2 000 000e page a été visitée ce 18 mars 2012, vers midi.
La 3 000 000e page a été visitée ce 7 janvier 2014 entre 18 h et 18 h 45,
La 4 000 000e page a été visitée ce 5 juin 2015 entre 15 h 49 et 15 h 52,
La 5 000 000e page a été visitée ce 29 aout 2017 après 23 h 30,
Et la 6 000 000e page visitée, trop tôt pour y penser ?
 
et, d'après BelStat, CUY est visité surtout en semaine, peu le weekend...
moins et irrégulièrement pendant les vacances :

visites sur 3 mois, de la mi octobre 2013 à la mi janvier 2014.
 
La 3 333 333e page visitée a eu lieu ce mardi 10 juin 2014, en début d'après midi...
La 3 666 666e page visitée a eu lieu ce dimanche 28 decembre 2014, vers 16 h...
Un tiers de million de pages visitées en 154 jours cela fait une moyenne de 2165 pages visitées par jour...
Deux tiers de million de pages visitées en 355 jours soit une moyenne de 1878 pages visitées par jour...
et seulement 1195 pages visitées quotidiennement pendant les vacances estivales
de la mi juin à la mi septembre 2014

Vous voulez lire quelques messages reçus ?
quelques encouragements ?
Cliquez ici


Fin septembre 2009, installation de ce compteur
qui ne compte chaque nouvel ordinateur visiteur qu'une seule fois
free counter
 
m-à-j du 22/11/2021 :

Depuis cette fin septembre 2009, parmi les 210 pays (sur 274 drapeaux connus) qui nous ont visité,
voici les 100 pays qui nous visitent le plus, 
Nos petits visiteurs, classés par date de visite, où un seul ordi nous a visité, sont :
199. Turkmenistan (TM May 10, 2017) ; 200. Lesotho (LS March 1, 2017) ;
201. Turks and Caicos Island (TC January 18, 2016
202. Cook Islands (CK September 19, 2015)  203. Faroe Islands (FO January 27, 2015
204. Virgin Islands American (VI November 12, 2014) ;
205. Belize (BZ September 29, 2014) ;206. Eswatini - Swaziland (SZ July 21, 2014) ;
207. Grenada (GD April 3, 2014) ; 208. Timor-Leste (TI March 29, 2014) ;
209. American Samoa (AS December 26, 2012) ; 210. Guyana (GY November 5, 2010).