⊗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हिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어LietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Биз сайттин иштөөсү, аналитика жана персонализация үчүн cookie файлдарын колдонобуз. Маалыматтарды иштетүү Маалыматты коргоо саясаты боюнча жүргүзүлөт.
баарын кабыл алуу ыңгайлаштыруу четке кагуу