⊗jsPmFNClb 255 of 505 menu

Callback функције у JavaScript-у

Функције се могу прослеђивати као параметри другим функцијама. Такве функције-параметри називају се колбекови (callback). Погледајмо рад са њима на примеру.

Претпоставимо да желимо да направимо функцију која ће првим параметром примати низ, а другим - колбек, који ће се примењивати на сваки елемент низа:

function each(arr, callback) { // овде је неки код }

Напишимо имплементацију наше функције:

function each(arr, callback) { let result = []; for (let elem of arr) { result.push( callback(elem) ); // pozivamo callback funkciju } return result; }

Наша функција each је универзална. То значи да можемо прослеђивати у њу различите колбекове, извршавајући различите операције над низовима. При томе код наше функције остаће непромењен - мењаће се само прослеђени колбекови.

За пример, користећу нашу функцију квадрирајмо сваки елемент неког низа. За то проследимо одговарајући колбек као параметар:

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

А сада кубирајмо елементе низа. За то ћемо као параметар проследити већ други колбек, који извршава ову операцију:

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

Дат је низ са бројевима. Помоћу креиране функције each увећајте сваки елемент два пута.

Дат је низ са стринговима. Помоћу креиране функције each обрните симболе сваког стринга у супротном редоследу.

Дат је низ са стринговима. Помоћу креиране функције each направите великим први симбол сваког стринга.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј