Einführung in die rekursive Funktion in JavaScript

Javascript ist ein Interpreter und eine übergeordnete Skriptsprache, die die Grundlage für HTML und webbasierte Programmiersprache bildet. Eine rekursive Funktion ruft sich selbst auf, um eine erwartete Ausgabe zu generieren. Zum leichteren Verständnis können Sie sich die Fakultät einer Zahlenfunktion vorstellen, die als perfektes Beispiel für eine Rekursionsfunktion in Javascript angeführt werden kann. In diesem Thema lernen wir die rekursive Funktion in JavaScript kennen.

Rekursion wird auch als das Programmiermuster definiert, das häufig in Fällen nützlich ist, in denen ein bestimmter Fall oder eine bestimmte Aufgabe leicht in mehrere kleinere Unteraufgaben aufgeteilt werden kann, die spezifisch von der gleichen Art sind, aber natürlich viel einfacher. Immer wenn eine Funktion eine bestimmte Aufgabe ausführt, kann sie viele Funktionen als zu verarbeitende Intermediate aufrufen, und wenn sie sich selbst erledigt, wird sie als rekursive Funktion bezeichnet.

Syntax der rekursiven Funktion

function func_name(var1, var2) (
//variable declaration
// code block and actual logic
for (initialisation; condition)
)
//loop code block and returning the result
)
//recursively calling a function
func_name(num1, num2)

Erläuterung

  • In der oben erläuterten Syntax haben wir versucht, das Konzept der rekursiven Funktionen in Javascript zu verstehen, indem wir das Konstrukt for looping verwendet haben. Zu Beginn haben wir eine Funktion mit dem Namen func_name deklariert, die unsere Basiseinheit bildet. Der gesamte folgende Code wird in diesen Funktionsblock geschrieben.
  • Als nächstes übergeben wir im Funktionsnamen zwei Parameter mit den Namen var1 und var2, wodurch die Variablen und ihre Werte erklärt werden. Danach folgt der Variablendeklarationsteil, in dem wir die Variablen und andere Werte schreiben, die für unsere Codelogik erforderlich sind, und bekannt geben, dass die eigentliche Codelogik implementiert wird.
  • In diesem Fall verwenden wir die for-Schleife, um unseren Codelogikblock zu schreiben. Sobald der Code geschrieben wurde, muss diese Funktionsanweisung wiederholt werden, dh der Funktionsblock, der in diesem Fall func_name ist, muss rekursiv aufgerufen werden. Daher werden zwei Zahlenargumentwerte als Parameter in func_name außerhalb der for-Schleife übergeben, sodass die Funktion wird solange erneut aufgerufen, bis die übergebenen Werte verbraucht sind.
  • So wird eine Rekursionsfunktion in JavaScript implementiert. Hierbei ist zu beachten, dass wir die iterative Bedingung in der for-Schleife nicht verwenden, da diese Bedingung von der rekursiven Funktion in ihrem Aufruf berücksichtigt wird.

Wie funktioniert die rekursive Funktion in JavaScript?

Da JavaScript eine weborientierte Sprache ist, kann die rekursive Funktion mithilfe von for-Schleife oder while-Schleife implementiert werden. Im Fall einer rekursiven Funktion besteht das Hauptziel des Programms darin, die Hauptaufgabe in viele kleinere Unteraufgaben zu zerlegen, bis die Unteraufgabe die Bedingung nicht mehr erfüllt und nicht mehr in die Schleife oder einen in die Funktion geschriebenen Codeblock eintritt . Es ist nicht erforderlich, dass eine Schleifenanweisung zum Implementieren der Rekursion verwendet wird. Sie kann jedoch auch mithilfe von bedingten Anweisungsblöcken wie if-else-Konstrukten erfolgen.

Beispiele für rekursive Funktionen in JavaScript

Lassen Sie uns dies anhand verschiedener Beispiele verstehen.

Beispiel 1

Lassen Sie uns dies mit der pow-Funktion verstehen, die die Kurzform für Macht ist. In diesem Beispiel lesen wir über pow (a, b), das die Potenz von a auf die natürliche Zahl von b erhöht. Wenn Sie anders sprechen, bedeutet dies, dass a mit sich selbst multipliziert werden muss.

//declaration of function power
function pow(a, b) (
//writing if condition and checking if it has broken into simplest task already
if (b == 1) (
//returning the value which needs to be reiterated
return a;
) else (
return a * pow(a, b - 1);
)
)
//recursively calling the function pow by passing two values to process
alert( pow(2, 3) );

Ausgabe:

In diesem Beispiel rufen wir die Funktion pow rekursiv auf und berechnen die Potenz 2, 3 Mal, was das Ergebnis 8 ergeben soll. Wenn pow aufgerufen wird, wird der Ausführungsblock basierend auf bedingten Anweisungen in zwei Kategorien aufgeteilt. Die erste spricht von der if-Anweisung, wobei if == 1 = b und die zweite sich auf den else-Teil des Blocks bezieht, in dem a mit der Potenz von a und b-1 multipliziert wird.

Beispiel # 2

In diesem zweiten Beispiel werden wir ein weiteres sehr beliebtes Beispiel für die rekursive Funktion untersuchen. Es ist bekannt, die Fakultät einer Zahl zu finden. Wenn Sie darüber sprechen, die Fakultät einer Zahl zu finden, müssen Sie die Zahl und alle nachfolgenden abnehmenden Werte bis 1 multiplizieren.

Die Snippet-Formel zum Ermitteln der Fakultät einer Zahl lautet:

b! = 1 iff b=0
else if (b-1)! *b iff b>0

Versuchen wir, diese Formel anhand eines Beispiels zu verstehen. Die Fakultät von 4 ist 4 * 3 * 2 * 1 = 24.

Code:

//declaring a function func
function fact(b) (
//declaring a variable
var res = 1;
//for loop to find the factorial of the number
for (let i = b; i > 1; i--) (
//fetching and consolidating the result statement
res *= i;
)
//returning the result which contains the factorial of the number b
return res;
)

Ausgabe:

In dem oben erläuterten Code wird die Fakultät aus jedem Wert herausgenommen, der in der Funktion fact übergeben wird, und der Wert res ist für die Berechnung des Werts verantwortlich.

Beispiel # 3

In diesem Beispiel wird gezeigt, wie die Rekursionsfunktion bei der Implementierung von Zählern verwendet wird, indem die if-else-Schleife verwendet wird.

Code:

//declaring a function value
var Cdown = function(val) (
//checking if the value is greater than 0
if (val > 0) (
//documenting and logging the console output
console.log(val);
return Cdown(val - 1);
) else (
return val;
)
);
Cdown(5);

Ausgabe:

In diesem Beispiel wird der Wert 5 als Ausgabe der Cdown-Funktion protokolliert und die Fakultät berechnet.

Empfohlene Artikel

Dies ist eine Anleitung zur rekursiven Funktion in JavaScript. Hier diskutieren wir die Syntax und die Funktionsweise von rekursiven Funktionen in JavaScript zusammen mit verschiedenen Beispielen. Sie können auch den folgenden Artikel lesen, um mehr zu erfahren -

  1. Muster in JavaScript
  2. Für Schleife in JavaScript
  3. JavaScript-Objekte
  4. Case Statement in JavaScript