Sobes.tech
Junior

Сен асинхрондук код менен иштөө үчүн кандай ыкмаларды билесиң?

sobes.tech AI

AIден жооп

Callbacks, Promises, async/await.

Callbacks: Башка функцияларга аргумент катары берилген жана асинхрондуу операция аяктагандан кийин чакырылуучу функциялар.

Promises: Объекттер, алар колбектерге салыштырмалуу көбүрөөк ыңгайлуулук менен асинхронду башкарууну камсыз кылат. Алар pending, fulfilled жана rejected абалдарга ээ.

// Мисал Promise
function asyncOperation() {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve('Операция ийгиликтүү аяктады!');
    }, 1000);
  });
}

asyncOperation()
  .then(result => console.log(result))
  .catch(error => console.error(error));

async/await: Promises үстүндөгү синтаксистик шекер, ал асинхрондук кодду көбүрөөк синхронго окшош кылат жана анын окумдуулугун жакшыртат.

// Мисал async/await
async function performAsyncOperation() {
  try {
    const result = await asyncOperation();
    console.log(result);
  } catch (error) {
    console.error(error);
  }
}

performAsyncOperation();

Методдордун салыштырылышы:

Метод Окумдуулук / Түзөтүү Каталардын иштетилиши Токтому башкаруу
Callbacks Азырынча окумдуу эмес (Callback Hell) Кыйын Кыйын
Promises Жакшыртылган Ыңгайлуу (.catch) Ыңгайлуу (.then, .catch)
async/await Эң жакшы Ыңгайлуу (try...catch) Ыңгайлуу (await)

Современный Node.js колдонмолордо эң көбүнчө колдонулган ыкма — async/await, анын окумдуулугу жана ыңгайлуулугу үчүн. Promises дагы маанилүү инструмент бойдон калууда, өзгөчө төмөнкү деңгээлде ишке ашырганда. Callbacks эски коддо же ядронын төмөнкү деңгээлдеги операцияларында колдонулат.