⊗jsPmFNIF 247 of 505 menu

Nestede funksjoner i JavaScript

La oss si at vi har en funksjon som tar imot to tall som parametre og returnerer summen av kvadratene av disse tallene:

function func(num1, num2) { return num1 * num1 + num2 * num2; } console.log(func(2, 3)); // skriver ut 13 (resultatet av 2 * 2 + 3 * 3)

La oss ta operasjonen av å opphøye i andre og flytte den til en hjelpefunksjon square:

function square(num) { return num * num; } function func(num1, num2) { return square(num1) + square(num2); } console.log(func(2, 3)); // skriver ut 13

La oss si at vi er sikre på at funksjonen square kun vil bli brukt i funksjonen func og ingen andre steder.

I dette tilfellet ville det vært praktisk å sørge for at ingen ved en feiltakelse bruker den (dette gjelder deg selv eller en annen programmerer som jobber sammen med deg).

JavaScript har en elegant løsning: vi kan plassere vår hjelpefunksjon square inni func. På denne måten vil hjelpefunksjonen vår kun være tilgjengelig inni func, og ikke utenfor.

La oss gjøre dette:

function func(num1, num2) { function square(num) { return num * num; } return square(num1) + square(num2); } console.log(func(2, 3)); // skriver ut 13

Et forsøk på å kalle square utenfor func vil føre til en feil:

function func(num1, num2) { function square(num) { return num * num; } return square(num1) + square(num2); } console.log(square(2)); //!! vil gi en feil

Lag en funksjon func som parametrene tar imot to tall, og returnerer summen av kvadratet av det første tallet med kubikken av det andre tallet. Lag for dette en hjelpefunksjon square, som opphøyer et tall i andre, og en hjelpefunksjon cube, som opphøyer et tall i tredje.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis