𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗣𝗿𝗼𝗺𝗶𝘀𝗲𝘀
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: પ્રથમ ભૂલ આવતા જ અટકી જાય છે.
