𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 𝗕𝗮𝘀𝗶𝗰𝘀: 𝗖𝗮𝗹𝗹𝗯𝗮𝗰𝗸𝘀, 𝗢𝗯𝗷𝗲𝗰𝘁𝘀, અને 𝗘𝘅𝗲𝗰𝘂𝘁𝗶𝗼𝗻
JavaScript બે રીતે ચાલે છે: synchronous અને asynchronous.
Synchronous કોડ લાઇન-બાય-લાઇન ચાલે છે. એન્જિન એક કાર્ય પૂરું કર્યા પછી જ બીજું કાર્ય શરૂ કરે છે. આના કારણે પછીનું કાર્ય ચાલતું અટકી જાય છે (blocks).
Asynchronous કોડ કાર્યોને સ્વતંત્ર રીતે ચાલવાની મંજૂરી આપે છે. તમે એક કાર્ય શરૂ કરો છો અને તેના પૂર્ણ થવાની રાહ જોતા બીજા કાર્ય પર આગળ વધી શકો છો. આ વેબ એપ્સમાં પર્ફોર્મન્સ સુધારે છે.
મુખ્ય asynchronous ખ્યાલો: • Callbacks: પછીથી ચલાવવા માટે અન્ય ફંક્શન્સમાં પસાર કરવામાં આવતા ફંક્શન્સ. • Promises: કોઈ ઓપરેશનના પરિણામનું પ્રતિનિધિત્વ કરતા ઓબ્જેક્ટ્સ. • Async/Await: asynchronous કોડને વાંચવામાં સરળ બનાવવા માટેનું આધુનિક સિન્ટેક્સ. • Event Loop: કાર્યના અમલીકરણનું સંચાલન કરતી સિસ્ટમ.
Processes અને Threads ને સમજવું
Process એ અમલીકરણમાં રહેલ (in execution) એક પ્રોગ્રામ છે. • Processes અલગ (isolated) હોય છે. • તેઓ મેમરી શેર કરતા નથી. • એક process ચાઇલ્ડ processes બનાવી શકે છે. • તેમને સમાપ્ત (terminate) થવામાં વધુ સમય લાગે છે.
Thread એ process નો એક ભાગ છે. • એક process માં ઘણા threads હોઈ શકે છે. • Threads મેમરી શેર કરે છે. • તેમને સમાપ્ત થવામાં ઓછો સમય લાગે છે.
Callback Function શું છે?
Callback એ આર્ગ્યુમેન્ટ તરીકે પસાર કરવામાં આવતું ફંક્શન છે. બહારનું ફંક્શન કાર્ય પૂર્ણ કરવા માટે તેને કોલ કરે છે. Callbacks નો ઉપયોગ નીચેના માટે કરો: • ડેટા ફેચ (fetching) કરવા જેવા asynchronous કાર્યો માટે. • બટન ક્લિક જેવી ઇવેન્ટ હેન્ડલિંગ માટે. • ફરીથી ઉપયોગ કરી શકાય તેવો (reusable) કોડ બનાવવા માટે.
JavaScript Objects
એક Object ડેટાને key-value જોડીઓમાં સંગ્રહિત કરે છે. Keys મૂલ્યોને ઓળખે છે. Values પ્રિમીટિવ્સ (primitives), અન્ય ઓબ્જેક્ટ્સ અથવા ફંક્શન્સ હોઈ શકે છે.
તમે બે રીતે ઓબ્જેક્ટ્સ બનાવી શકો છો:
Object Literals: પ્રોપર્ટીઝ વ્યાખ્યાયિત કરવા માટે કરલી બ્રેસ (curly braces) નો ઉપયોગ કરો. ઉદાહરણ:
let user = {name: "Sourav", age: 23};Object Constructor:
new Object()કમાન્ડનો ઉપયોગ કરો. ઉદાહરણ:let user = new Object();
Objects મ્યુટેબલ (mutable) હોય છે. તમે કોઈપણ સમયે પ્રોપર્ટીઝ ઉમેરી, બદલી અથવા કાઢી શકો છો. આ તમને સંબંધિત ડેટાને એકસાથે ગ્રુપ કરવામાં મદદ કરે છે.