⊗jsPmFNClb 255 of 505 menu

Callback funkcije v JavaScriptu

Funkcije lahko podamo kot parametre drugim funkcijam. Takšne funkcije-parametri se imenujejo klicne funkcije (callback). Poglejmo si delo z njimi na primeru.

Recimo, da želimo narediti funkcijo, ki bo prvi parameter sprejela polje, drugi pa - klicno funkcijo, ki jo bo aplicirala na vsak element polja:

function each(arr, callback) { // tukaj je nek koda }

Napišimo implementacijo naše funkcije:

function each(arr, callback) { let result = []; for (let elem of arr) { result.push( callback(elem) ); // kličemo klicno funkcijo } return result; }

Naša funkcija each je univerzalna. To pomeni, da ji lahko podajamo različne klicne funkcije in izvajamo različne operacije nad polji. Pri tem koda naše funkcije ostane nespremenjena - spreminjali se bodo le podane klicne funkcije.

Za primer s pomočjo naše funkcije kvadrirajmo vsak element nekega polja. Za to podajmo kot parameter ustrezno klicno funkcijo:

let result = each([1, 2, 3, 4, 5], function(num) { return num ** 2; }); console.log(result);

Zdaj pa elemente polja povzdignimo v kub. Za to kot parameter podajmo drugo klicno funkcijo, ki izvaja to operacijo:

let result = each([1, 2, 3, 4, 5], function(num) { return num ** 3; }); console.log(result);

Podano je polje s števili. S pomočjo ustvarjene funkcije each podvojite vsak element.

Podano je polje z nizi. S pomočjo ustvarjene funkcije each obrnite znake vsakega niza v obratnem vrstnem redu.

Podano je polje z nizi. S pomočjo ustvarjene funkcije each naredite prvo črko vsakega niza veliko.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni