𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗣𝗿𝗼𝗺𝗶𝘀𝗲𝘀

Promise એ એક asynchronous કાર્યના પરિણામનું પ્રતિનિધિત્વ કરે છે.

તમે API calls, database queries અને file reading માટે Promises નો ઉપયોગ કરો છો.

Promise ની ત્રણ સ્થિતિઓ (states) હોય છે:

  • Pending: કાર્ય હજુ પણ ચાલી રહ્યું છે.
  • Fulfilled: કાર્ય સફળતાપૂર્વક પૂર્ણ થયું છે.
  • Rejected: કાર્ય ભૂલ (error) સાથે નિષ્ફળ ગયું છે.

તેનું માળખું આ મુજબ છે:

const promise = new Promise((resolve, reject) => { // The executor runs immediately });

તમે આ methods દ્વારા પરિણામો હેન્ડલ કરી શકો છો:

  • .then(): જ્યારે promise સફળ થાય ત્યારે ચાલે છે.
  • .catch(): જ્યારે promise નિષ્ફળ જાય ત્યારે ચાલે છે.
  • .finally(): પરિણામ ગમે તે હોય, કાર્ય પૂર્ણ થાય ત્યારે ચાલે છે.

યાદ રાખવા માટેના મહત્વના નિયમો:

  • પ્રથમ પરિણામ જ ગણતરીમાં લેવાય છે. જો તમે resolve() અને પછી reject() ને કોલ કરો છો, તો resolve જીતે છે.
  • Executor function synchronously ચાલે છે.
  • async અને await નો ઉપયોગ કરવાથી તમારો કોડ .then() કરતા વાંચવામાં વધુ સરળ બને છે.

એકસાથે અનેક promises હેન્ડલ કરવા માટે:

  • Promise.all(): આ 'fail-fast' અભિગમ અનુસરે છે. જો એક promise નિષ્ફળ જાય, તો આખો ગ્રુપ નિષ્ફળ જાય છે.
  • Promise.allSettled(): આ દરેક promise પૂર્ણ થાય ત્યાં સુધી રાહ જુએ છે. જો કેટલાક કાર્યો નિષ્ફળ જાય તો પણ તે પરિણામો આપે છે.

સારાંશ:

  • Promise: એક asynchronous પરિણામ હેન્ડલર.
  • resolve: સફળતા દર્શાવે છે.
  • reject: નિષ્ફળતા દર્શાવે છે.
  • async/await: Promises લખવાની એક સ્વચ્છ રીત.
  • Promise.all: પ્રથમ ભૂલ આવતા જ અટકી જાય છે.