Fonction récursive javascript

Fonction récursive javascript
Récursivité est une approche de résolution de problèmes dans laquelle vous définissez une fonction qui ne cesse de s'appeler jusqu'à ce qu'elle atteigne le résultat requis. La récursivité est une bonne façon de procéder lorsque vous devez appeler la même fonction plusieurs fois avec des paramètres différents. Il peut être utilisé dans plusieurs situations; Cependant, il excelle au tri, les mathématiques fractales et la traversée des structures de données non linéaires.

Fonctions récursives javascript sont également simples à utiliser car ils sont simples à construire, avec une valeur de retour cohérente et spécifique pour l'entrée spécifiée, et n'affectent pas l'état des variables externes.

Cet article expliquera le fonctionnement de la fonction récursive JavaScript à l'aide d'exemples appropriés. Alors, commençons!

Fonction récursive javascript

Un javascript "Fonction récursive"Est une fonction qui s'appelle, soit directement ou indirectement. À l'aide de la récursivité, un problème spécifique peut être résolu en renvoyant l'appel de valeur de la même fonction.

De plus, à un moment donné, la fonction récursive doit être terminée. Les conditions internes sont fréquemment utilisées pour renvoyer une fonction récursive, qui envoie la logique à une nouvelle itération jusqu'à ce que «cas de base»Ou l'état de base est satisfait.

Maintenant, comprenons ce qu'est un cas de base dans la fonction récursive javascript.

Cas de base dans la fonction récursive javascript

Le cas de base d'une fonction récursive est une itération qui ne nécessite pas d'autres récursitions pour résoudre un problème. Une fonction récursive JavaScript doit avoir un cas de base; Sans lui, une fonction récursive ne se terminera jamais, ce qui entraînera une boucle infinie.

Syntaxe de la fonction récursive JavaScript

fonction recursefunc ()
// Définition de recursefunc ()
recursefunc ();

recursefunc ();

Ici, dans la syntaxe donnée ci-dessus, le «recursefunc ()"Est une fonction récursive javascript qui s'appelle à l'intérieur de son corps.

Fonctionnement de la fonction récursive javascript

L'objectif d'une fonction récursive JavaScript est de décomposer la tâche principale en segments ou sous-tâches plus petits jusqu'à ce qu'un sous-tâche ne respecte pas la condition spécifiée et n'entre dans aucun autre bloc de code écrit dans la fonction récursive.

En JavaScript, il n'est pas essentiel d'utiliser uniquement des instructions en boucle pour implémenter la récursivité; Au lieu de cela, des blocs conditionnels tels que le «sinon»La déclaration peut être utilisée dans le même but.

Nous allons maintenant consulter quelques exemples de mise en œuvre de fonctions récursives dans JavaScript.

Exemple 1: Utilisation de la fonction récursive JavaScript

Dans le programme suivant, une fonction récursive est définie nommée «comptoir()". Ce "comptoir()" La fonction comptera le nombre jusqu'à «5»:

Counter de fonction (x)
console.log (x);
Cons num = x + 1;
si (num< 6)
compteur (num);

Le "comptoir()"La fonction s'appellera jusqu'à l'affaire de base"nobs < 6" se rencontre:

compteur (1);

L'exécution du code ci-dessus imprimera les numéros de «1" pour "5»:

Exemple 2: Utilisation de la fonction récursive JavaScript

Le programme suivant appellera récursivement la fonction «pouvoir()"Pour calculer le pouvoir de"2","4"Temps qui généreront"16".

Ici, quand le «pouvoir()«La fonction est invoquée, le bloc d'exécution se divisera en deux parties en fonction de la condition ajoutée«sinon" déclaration. Le "si»La condition vérifiera si le deuxième numéro«y" équivaut à "1", et le "autre"La partie fait référence au fonctionnement de la multiplication du premier numéro"X"Avec la valeur renvoyée par le" POwer (x, y - 1)" fonction:

Power de fonction (x, y)
if (y == 1)
retour x;

autre
retour x * puissance (x, y - 1);


console.log ((puissance (2, 4)));

Comme vous pouvez le voir sur la sortie, nous avons réussi à implémenter la fonction récursive pour calculer le «2" pouvoir "4,"Qui entraîne la valeur"16»:

Quand utiliser la fonction récursive javascript

Voici la liste de certaines des situations où vous pouvez utiliser la fonction récursive JavaScript:

  • Pour résoudre les problèmes liés à ramification itérative comme la recherche binaire, la traversée, le tri ou toute autre structure de données, l'utilisation de la fonction récursive se révèle être la plus efficace et appropriée.
  • Les fonctions récursives JavaScript sont utiles lorsqu'elles sont nécessaires appel le même fonction plusieurs fois en passant différents arguments dans une boucle. Par exemple, vous devez implémenter la série Fibonacci ou calculer le factoriel d'un grand nombre, puis utiliser la fonction récursive pour résoudre le problème sans aucun problème.

Quand éviter la fonction récursive javascript

Dans les circonstances suivantes, vous devez éviter d'utiliser la fonction récursive JavaScript:

  • Quand problème est aussi mineure Pour être géré avec seulement quelques lignes de code de base, il faut éviter d'utiliser la récursivité pour le résoudre. La raison en est que la fonction récursive JavaScript continuera de s'invoquer jusqu'à ce qu'elle rencontre le cas de base. En conséquence, la fonction récursive inutilement utilise une quantité importante de mémoire.
  • Il est également possible que si récursivité est surutilisé, L'ensemble du programme deviendra infini, Et il n'y aura pas d'autre option pour sa résiliation. Ainsi, vous devez utiliser soigneusement la récursivité avec l'exactitude uniquement là où il faut.

C'était toutes des informations essentielles liées à la fonction récursive javascript. Vous pouvez l'explorer davantage en fonction de vos préférences.

Conclusion

UN Fonction récursive javascript est un type de fonction qui s'appelle, soit directement ou indirectement. À l'aide de la récursivité, un problème spécifique peut être résolu en renvoyant l'appel de valeur de la même fonction. Une fonction récursive JavaScript doit avoir un cas de base; Sans lui, une fonction récursive ne se terminera jamais, ce qui entraînera une boucle infinie. Cet article a expliqué la fonction récursive JavaScript à l'aide d'exemples appropriés.