Sobes.tech
Junior — Middle

Async və Await əməliyyatlarından istifadə edərək asinxron proqramlaşdırma anlayışını izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Node.js-də asinxron proqramlaşdırma giriş-çıxış əməliyyatlarını (məsələn, faylların oxunması, verilənlər bazasına sorğular, şəbəkə sorğuları) əsas icra axını bloklamadan yerinə yetirməyə imkan verir. Bu, asyncawait açar sözləri vasitəsilə əldə edilir.

  • async funksiyanın əvvəlində yazılırsa, bu funksiya Promise qaytarır və onun daxilində await istifadə oluna bilər.
  • await funksiyanın icrasını dayandırır, Promise həll olunana və ya rədd olunana qədər, bu da asinxron kodu sinxron tərzdə yazmağa imkan verir.

Nümunə:

const fetch = require('node-fetch');

async function getData() {
  try {
    const response = await fetch('https://api.example.com/data');
    const data = await response.json();
    console.log(data);
  } catch (error) {
    console.error('Xəta:', error);
  }
}

getData();

Bu nümunədə, await funksiyanın fetch-dən cavab gözləməsini təmin edir, bu da Node.js-nin bütün axınını bloklamır. Bu, asinxron kodla işləməni sadələşdirir və .then() zəncirlərindən istifadə etməklə müqayisədə oxunuşu yaxşılaşdırır.