Úvod do rekurzívnej funkcie v JavaScripte

Javascript je tlmočník a skriptovací jazyk na vysokej úrovni, ktorý tvorí základ HTML a webového programovacieho jazyka. Rekurzívna funkcia je funkcia, ktorá sa volá sama, aby vygenerovala očakávaný výstup. Pre ľahšie pochopenie si môžete predstaviť faktoriál číselnej funkcie, ktorá môže byť uvedená ako perfektný príklad rekurznej funkcie v Javascripte. V tejto téme sa dozvieme o rekurzívnej funkcii v JavaScripte.

Rekurzia je tiež definovaná ako vzorec programovania, ktorý je často užitočný v prípadoch, keď sa konkrétny prípad alebo úloha dá ľahko rozdeliť na niekoľko menších čiastkových úloh, ktoré sú špecificky rovnakého druhu, ale samozrejme oveľa jednoduchšie. Kedykoľvek funkcia plní určitú úlohu, môže ju nazvať mnoho funkcií ako medziproduktov na spracovanie a keď sa tak stane, nazýva sa rekurzívna funkcia.

Syntax rekurzívnej funkcie

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)

vysvetlenie

  • Vo vyššie popísanej syntaxi sme sa pokúsili pochopiť pojem rekurzívnych funkcií v Javascripte použitím konštrukcie looping. Na začiatku sme deklarovali funkciu názvom func_name, ktorá tvorí našu základnú entitu a do tohto funkčného bloku sa zapíše nasledujúci kód.
  • Ďalej v názve funkcie odovzdáme dva parametre menom var1 a var2, ktoré vysvetľujú premenné a ich hodnoty. Potom príde časť deklarácie premenných, kde napíšeme premenné a ďalšie hodnoty potrebné pre našu kódovú logiku a post implementujeme skutočnú kódovú logiku.
  • V tomto prípade využívame pre loop na písanie nášho kódu logický blok. Po napísaní kódu bude potrebné znovu zopakovať tento funkčný príkaz, tj v tomto prípade rekurzívne zavolať tento funkčný blok, ktorý je func_name, a preto budeme predávať dve hodnoty argumentov argumentov ako parametre v func_name mimo slučky for, aby funkcia je volaná znova, kým a pokiaľ odovzdané hodnoty nie sú spotrebované.
  • Týmto spôsobom je v jazyku JavaScript implementovaná funkcia rekurzie. Jeden bod, ktorý je potrebné poznamenať, je, že nevyužívame iteračné podmienky v cykle, pretože tento stav bude zabezpečovaný rekurzívnou funkciou v jeho volaní.

Ako funguje rekurzívna funkcia v JavaScripte?

Pretože JavaScript je webovo orientovaný jazyk, rekurzívnu funkciu je možné implementovať pomocou for for loop alebo while while. V prípade rekurzívnej funkcie je hlavným cieľom programu zmenšiť hlavnú úlohu na mnoho menších čiastkových úloh, kým podúloha nespĺňa podmienky a nezačne vstúpiť do slučky alebo do žiadneho bloku kódu napísaného vo funkcii., Nie je potrebné, aby sa akýkoľvek príkaz na opakovanie použil na implementáciu rekurzie, ale dá sa to urobiť aj použitím podmienených blokov príkazov, ako sú napríklad konštrukty if-else.

Príklady rekurzívnej funkcie v JavaScripte

Pochopme to pomocou rôznych príkladov.

Príklad č. 1

Pochopme to funkciou pow, ktorá je skratkou pre moc. V tomto príklade budeme čítať o pow (a, b), ktoré zvyšuje silu a na prirodzený počet b. ak hovoríte inými slovami, znamená to, že a sa má násobiť samo o sebe b toľkokrát.

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

Výkon:

V tomto príklade voláme rekurzívne funkciu pow a vypočítavame silu 2, 3 krát, ktorá by mala priniesť výsledok 8. Keď sa volá pow, vykoná sa výkonný blok na základe podmienených príkazov do dvoch kategórií. Prvý z nich bude hovoriť o príkaze if, ak if a == 1 = ba druhý sa týka druhej časti bloku, kde a sa vynásobí výslednou silou a a b-1.

Príklad č. 2

V tomto druhom príklade sa chystáme študovať ďalší veľmi populárny príklad rekurzívnej funkcie. Je známe ako nájdenie faktoriálu čísla. Keď hovoríte o nájdení faktoriálu čísla, máte na mysli vynásobenie čísla a všetkých následných klesajúcich hodnôt do 1.

Úryvkový vzorec na nájdenie faktoriálu čísla je:

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

Pokúsme sa pochopiť tento vzorec pomocou príkladu. Faktor 4 je 4 * 3 * 2 * 1 = 24.

kód:

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

Výkon:

Vo vyššie uvedenom kóde by faktoriál bol vyňatý z akejkoľvek hodnoty, ktorá je odovzdaná vo funkcii pomenovanej fakty, a hodnota res bude zodpovedná za výpočet hodnoty.

Príklad č. 3

V tomto príklade uvidíme, ako sa funkcia rekurzie používa pri implementácii počítadiel pomocou slučky if-else.

kód:

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

Výkon:

V tomto príklade sa hodnota 5 zaznamená ako výstup funkcie Cdown a vypočíta sa faktoriál.

Odporúčané články

Toto je sprievodca rekurzívnymi funkciami v JavaScripte. Tu diskutujeme jeho syntax a to, ako rekurzívna funkcia funguje v JavaScripte spolu s rôznymi príkladmi. Viac informácií nájdete aj v nasledujúcom článku -

  1. Vzory v JavaScripte
  2. Pre slučku v jazyku JavaScript
  3. Objekty JavaScript
  4. Prípad v jazyku JavaScript

Kategórie: