Sobes.tech
Junior

რა განსხვავებაა async და await საკვანძო სიტყვებს შორის?

sobes.tech AI

პასუხი AI-სგან

JavaScript-ში (async და await) და სხვა ენებში, რომლებიც მხარს უჭერენ ასინქრონულობას, ძირითადი განსხვავება მათი მიზანსა და გამოყენებაშია:

  • async არის საკვანძო სიტყვა, რომელიც გამოიყენება ფუნქციის როგორც ასინქრონული გამოცხადებისთვის. ასეთი ფუნქცია ყოველთვის აბრუნებს Promise-ს, მიუხედავად იმისა, რომ შიგნით არ არის გამოთქმული Promise-ის დაბრუნება.

  • await არის ოპერატორი, რომელიც გამოიყენება async ფუნქციების შიგნით, რათა დაელოდოს Promise-ის შედეგს. იგი აჩერებს ფუნქციის შესრულებას მანამ, სანამ Promise არ შესრულდება, და აბრუნებს მის შედეგს.

მაგალითი:

async function fetchData() {
  const response = await fetch('https://api.example.com/data');
  const data = await response.json();
  return data;
}

fetchData().then(data => console.log(data));

აქ, async გამოაცხადებს fetchData ფუნქციას როგორც ასინქრონულს, ხოლო await საშუალებას აძლევს დაწეროთ ასინქრონული კოდი სინქრონული სტილში, ელოდებით პირდების დასრულებას.