⊗jsSpACInr 155 of 294 menu

JavaScript-те асинхронды коллбэктермен код

Бізде келесідей асинхронды функция бар делік:

function make() { setTimeout(function() { console.log('1'); }, 3000); }

Біз бұл функцияны келесі түрде қолданамыз делік:

make(); console.log('2'); // бірінші орындалады

Функция ішіндегі асинхронды операция орындалғаннан кейін консольдегі екінші шығару орындалуы үшін жасайық делік. Бұл үшін қолданылатын тәсілдердің бірі коллбэктерді қолдану: күтілетін кодты анонимды функцияға орап, функцияға make параметр ретінде беру:

make(function() { console.log('2'); });

Әрине, бұл өздігінен біздің мәселемізді шешпейді. Қазір біз жай ғана келесі келісімді жасадық: make орындалғаннан кейін кодты орындағыңыз келсе, сол кодты make шалуына коллбэк ретінде беріңіз.

make функциясының кодын біздің келісімімізге сәйкес жұмыс істеу үшін түзетейік:

function make(callback) { setTimeout(function() { console.log('1'); // қандай да бір асинхронды операция, бірнеше болуы мүмкін callback(); // содан кейін біздің коллбэкіміз }, 3000); }

Консольде сандардың қай ретпен шығарылатынын айтып беріңіз:

function make(callback) { setTimeout(function() { console.log('1'); callback(); }, 3000); } make(function() { console.log('2'); console.log('3'); });
Қазақ
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 файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау