⊗jsPmFNFRF 252 of 505 menu

Funkcija koja vraća funkciju u JavaScript-u

Recimo da imamo ovakvu funkciju koja vraća string:

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

Sada, po analogiji, umesto stringa, hajde da vratimo anonimnu funkciju:

function func() { return function() { return '!'; }; } let result = func(); // u promenljivoj result će biti funkcija console.log(result); // ispisaće 'function() {return '!';}'

Kao što vidite, promenljiva result sada predstavlja funkciju. Hajde da ispišemo u konzolu rezultat njenog rada. Da bismo to uradili, napišimo joj okrugle zagrade:

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

Pošto poziv func() vraća funkciju, možemo odmah i pozvati tu vraćenu funkciju, ovako: func()() - prve okrugle zagrade dobijaju rezultat funkcije func (koji je sam po sebi funkcija), a druge okrugle zagrade primenjuju se na rezultat func.

Hajde da probamo:

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

Napravite funkciju func1, tako da kada se pozove ovako: func1()(), vrati broj 1. Napravite sličnu funkciju func2, koja vraća broj 2. Pronađite zbir rezultata ovih funkcija.

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