⊗jsPmFNIF 247 of 505 menu

Beágyazott függvények a JavaScriptben

Tegyük fel, hogy van egy függvényünk, amely paraméterként két számot fogad és visszaadja ezeknek a számoknak a négyzetösszegét:

function func(num1, num2) { return num1 * num1 + num2 * num2; } console.log(func(2, 3)); // kiírja 13-t (az eredmény 2 * 2 + 3 * 3)

Vegyük ki a négyzetre emelés műveletét egy square segédfüggvénybe:

function square(num) { return num * num; } function func(num1, num2) { return square(num1) + square(num2); } console.log(func(2, 3)); // kiírja 13-t

Tegyük fel, biztosak vagyunk benne, hogy a square függvényt csak a func függvényben fogjuk használni, és sehol máshol.

Ebben az esetben kényelmes lenne, ha senki sem használhatná véletlenül (Ön maga vagy egy másik programozó, aki Önnel dolgozik együtt).

A JavaScriptben van egy elegáns megoldás: az square segédfüggvényt elhelyezhetjük a func függvény belsejében. Ebben az esetben a segédfüggvény csak a func függvényen belül lesz elérhető, kívülről viszont nem.

Tegyük ezt meg:

function func(num1, num2) { function square(num) { return num * num; } return square(num1) + square(num2); } console.log(func(2, 3)); // kiírja 13-t

A square függvény kívülről történő meghívásának kísérlete hibához vezet:

function func(num1, num2) { function square(num) { return num * num; } return square(num1) + square(num2); } console.log(square(2)); //!! hibát jelez

Készítsen egy func függvényt, amely paraméterként két számot fogad, és visszaadja az első szám négyzetének és a második szám köbének az összegét. Ehhez készítsen egy square segédfüggvényt a szám négyzetre emeléséhez, és egy cube segédfüggvényt a szám köbre emeléséhez.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás