⊗jsPmFCCl 274 of 505 menu

Closure i izvlačenje funkcije na licu mesta u JavaScript-u

Kao što već znate, možete pozvati anonimnu funkciju na licu mesta i dodeliti rezultat njenog rada nekoj promenljivoj:

let result = function() { return '!'; }(); console.log(result); // ispisaće '!'

Funkciju koja se poziva na licu mesta, u takvim slučajevima, često stavljaju u obične zagrade, iako za to nema potrebe. To se radi da bi se odmah videlo da se funkcija poziva na licu mesta:

let result = (function() { return '!'; })(); console.log(result); // ispisaće '!'

Neka sada rezultat funkcije pozvane na licu mesta bude anonimna funkcija:

let func = (function() { return function() { console.log('!'); } })(); func(); // ispisaće '!'

Učinimo da vraćena funkcija čuva u closure-u promenljivu num:

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

Ako dodamo još num++, onda će funkcija func postati gotov brojač:

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

Ne zagledavajući se u moj kod, samostalno realizujte isti takav brojač.

Modifikujte rad brojača tako da on broji do 5, a onda da se odbrojavanje ponovo započinje.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij