⊗jsPmFCCl 274 of 505 menu

Closure och omedelbar funktionsanvändning i JavaScript

Som du redan vet är det möjligt att anropa en anonym funktion omedelbart och tilldela resultatet av operationen till någon variabel:

let result = function() { return '!'; }(); console.log(result); // skriver ut '!'

Ofta sätts funktionen som anropas omedelbart i sådana fall inom parenteser, även om det inte är nödvändigt. Detta görs för att det genast ska vara synligt att funktionen anropas omedelbart:

let result = (function() { return '!'; })(); console.log(result); // skriver ut '!'

Låt nu resultatet av den omedelbart anropade funktionen vara en anonym funktion:

let func = (function() { return function() { console.log('!'); } })(); func(); // skriver ut '!'

Låt oss göra så att den returnerade funktionen lagrar variabeln num i ett closure:

let func = (function() { let num = 1; return function() { console.log(num); } })();

Om man lägger till num++, så blir funktionen func en färdig räknare:

let func = (function() { let num = 1; return function() { console.log(num); num++; } })(); func(); //skriver ut 1 func(); //skriver ut 2 func(); //skriver ut 3 func(); //skriver ut 4 func(); //skriver ut 5

Utan att kolla på min kod, implementera en sådan räknare på egen hand.

Modifiera räknarens funktion så att den räknar till 5, och sedan börjar omräkningen om från början.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa