Introducere în funcția recursivă în JavaScript

Javascript este un interpret și un limbaj de script la nivel înalt care constituie baza HTML și a limbajului de programare bazat pe web. O funcție recursivă este cea care se numește pentru a genera o ieșire preconizată. Pentru o mai bună înțelegere, vă puteți gândi la factorialul unei funcții numerice, care poate fi citat drept exemplul perfect al funcției de recursiune în Javascript. În acest subiect, vom afla despre funcția recursivă în JavaScript.

Recursiunea este, de asemenea, definită ca modelul de programare, care este adesea util în cazurile în care un anumit caz sau o sarcină poate fi divizat cu ușurință în mai multe sub-sarcini mai mici, care sunt specific de același fel, dar, desigur, mult mai simple. Ori de câte ori o funcție îndeplinește o anumită sarcină, aceasta poate numi multe funcții ca intermediari pentru a prelucra, iar atunci când o face singură, este numită funcție recursivă.

Sintaxa funcției recursive

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)

Explicaţie

  • În sintaxa explicată mai sus, am încercat să înțelegem conceptul funcțiilor recursive din Javascript, folosind construcția de bucle. La început, am declarat o funcție cu numele func_name, care face parte din entitatea noastră de bază și tot codul următor va fi scris în acel bloc de funcții.
  • În continuare, în numele funcției, trecem doi parametri prin numele var1 și var2, care explică variabilele și valorile acestora. După aceasta vine partea de declarație a variabilei, unde vom scrie variabilele și alte valori necesare pentru logica codului nostru și vom posta că logica codului real va fi implementată.
  • În acest caz, folosim bucla pentru a scrie blocul nostru de logică de cod. Odată ce codul a fost scris, este necesar să reiterăm acea instrucțiune funcțională, adică să apelăm recursiv la acel bloc de funcții care este nume_funcție în acest caz și, prin urmare, vom trece două valori de argument numere ca parametri în numele func_ din afara buclei pentru ca funcția se numește din nou până și dacă valorile trecute sunt consumate.
  • Așa se implementează o funcție de recursură în JavaScript. Un punct de remarcat aici este faptul că nu folosim condiția iterativă în buclă, deoarece această condiție va fi oferită de funcția recursivă în apelul său.

Cum funcționează funcția recursivă în JavaScript?

Deoarece JavaScript este un limbaj orientat pe web, funcția recursivă poate fi pusă în aplicare folosind pentru loop sau by loop. În cazul unei funcții recursive, scopul principal al programului este de a diminua sarcina principală în multe sub-sarcini mai mici, până când subtaskul nu respectă condiția și nu reușește să intre în buclă sau în orice bloc de cod scris în interiorul funcției . Nu este necesar ca orice instrucțiune de buclă să fie utilizată pentru implementarea recursurii, dar se poate face și folosind blocuri condiționate de instrucțiuni, cum ar fi construcții if-else.

Exemple de funcții recursive în JavaScript

Să înțelegem acest lucru cu ajutorul diferitelor exemple.

Exemplul # 1

Să înțelegem acest lucru cu funcția pow, care este forma scurtă pentru putere. În acest exemplu, vom citi despre pow (a, b) care ridică puterea lui a la numărul natural de b. dacă vorbești în alți termeni, înseamnă că a trebuie multiplicată de la sine b de mai multe ori.

//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) );

ieşire:

În acest exemplu, apelăm recursiv la funcția pow și calculăm puterea de 2, 3 ori, ceea ce ar trebui să producă rezultatul 8. Când este apelat pow, blocul de execuție este împărțit în două categorii pe baza instrucțiunilor condiționale. Prima va vorbi despre afirmația if în cazul în care dacă a == 1 = b și a doua se referă la cealaltă parte a blocului unde a este înmulțită cu rezultatul puterii lui a și b-1.

Exemplul # 2

În acest al doilea exemplu, vom studia despre un alt exemplu foarte popular al funcției recursive. Este cunoscut ca găsirea factorialului unui număr. Când vorbești despre găsirea factorialului unui număr, înseamnă să înmulțiți numărul și toate valorile descrescătoare ulterioare ale acestuia până la 1.

Formula fragmentului pentru a găsi factorialul unui număr este:

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

Să încercăm să înțelegem această formulă cu ajutorul unui exemplu. Factorialul de 4 este 4 * 3 * 2 * 1 = 24.

Cod:

//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;
)

ieşire:

În codul explicat mai sus factorialul ar fi scos din orice valoare care este trecută în interiorul funcției numit fapt și valoarea res va fi responsabilă pentru calcularea valorii.

Exemplul # 3

În acest exemplu, vom vedea cum funcția de recurs este utilizată în implementarea contoarelor, folosind bucla if-else.

Cod:

//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);

ieşire:

În acest exemplu, valoarea de 5 va fi înregistrată ca ieșire a funcției Cdown și va calcula factorialul.

Articole recomandate

Acesta este un ghid pentru funcția recursivă în JavaScript. Aici vom discuta sintaxa și modul în care funcția recursivă funcționează în JavaScript împreună cu diferite exemple. De asemenea, puteți consulta articolul următor pentru a afla mai multe -

  1. Modele în JavaScript
  2. Pentru buclă în JavaScript
  3. Obiecte JavaScript
  4. Declarație de caz în JavaScript