⊗jsPmFCCl 274 of 505 menu

Closure og omgående funktionskald i JavaScript

Som du allerede ved, kan du kalde en anonym funktion omgående og tildele resultatet af kørslen til en variabel:

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

Ofte sættes funktionen, der kaldes omgående, i sådanne tilfælde i parenteser, selvom det ikke er nødvendigt. Dette gøres for, at det umiddelbart skal være synligt, at funktionen kaldes omgående:

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

Lad nu resultatet af den omgående kaldte funktion være en anonym funktion:

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

Lad os gøre det sådan, at den returnerede funktion gemmer variablen num i et closure:

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

Hvis man tilføjer num++, så bliver funktionen func en færdig tæller:

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

Uden at kigge på min kode, skal du selv implementere en sådan tæller.

Modificer tælleren, så den tæller til 5, og derefter starter optællingen forfra.

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