⊗jsPmFCCl 274 of 505 menu

Lukkinger og umiddelbar funksjonskalling i JavaScript

Som du allerede vet, er det mulig å kalle en anonym funksjon umiddelbart og tildele resultatet av operasjonen til en variabel:

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

Ofte settes funksjonen som kalles umiddelbart, i slike tilfeller inn i parenteser, selv om det ikke er nødvendig. Dette gjøres for at det umiddelbart skal være synlig at funksjonen kalles på stedet:

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

La nå resultatet av den umiddelbart kalte funksjonen være en anonym funksjon:

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

La oss gjøre det slik at den returnerte funksjonen lagrer variabelen num i lukkingen:

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

Hvis du legger til num++, vil funksjonen func bli en ferdig teller:

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

Uten å kikke på koden min, implementer en slik teller selvstendig.

Modifiser telleren slik at den teller til 5, og deretter starter tellingen på nytt.

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