⊗jsPmFNClb 255 of 505 menu

JavaScript-ի কলբեք ֆունկցիաները

Ֆունկցիաները կարող են փոխանցվել որպես պարամետրեր այլ ֆունկցիաների: Նման ֆունկցիա-պարամետրերը կոչվում են կոլբեքներ (callback): Եկեք դիտարկենք դրանց հետ աշխատանքը օրինակով:

Ենթադրենք, մենք ուզում ենք ստեղծել մի ֆունկցիա, որն առաջին պարամետրով կվերցնի զանգված, իսկ երկրորդով՝ կոլբեք, որը կկիրառի զանգվածի յուրաքանչյուր տարրի նկատմամբ:

function each(arr, callback) { // այստեղ ինչ-որ կոդ }

Եկեք գրենք մեր ֆունկցիայի իրականացումը.

function each(arr, callback) { let result = []; for (let elem of arr) { result.push( callback(elem) ); // կանչում ենք կոլբեք ֆունկցիան } 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हिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել