Dalam artikel ini Konsep Koding secara singkat merangkum masalah yang terkait dengan JavaScript Synchronous, dan pertama-tama melihat beberapa teknik asinkron berbeda yang akan Anda temui, menunjukkan bagaimana mereka dapat membantu kami memecahkan masalah tersebut.

Pengertian Dan Contoh Synchronous dan Asynchronous in JavaScript
Pengertian Dan Contoh Synchronous dan Asynchronous in JavaScript


JavaScript adalah bahasa pemrograman utas tunggal (single thread) yang berarti hanya satu hal yang dapat terjadi pada satu waktu. Artinya, mesin JavaScript hanya dapat memproses satu pernyataan pada satu waktu dalam satu utas.

Meskipun bahasa utas tunggal (single thread) menyederhanakan penulisan kode karena Anda tidak perlu khawatir tentang masalah konkurensi, ini juga berarti Anda tidak dapat melakukan operasi lama seperti akses jaringan tanpa memblokir utas utama.

Bayangkan meminta beberapa data dari API. Bergantung pada situasinya, server mungkin memerlukan waktu untuk memproses permintaan sambil memblokir utas utama yang membuat halaman web tidak responsif.

Di situlah JavaScript asinkron berperan. Menggunakan JavaScript asinkron (seperti panggilan balik, janji, dan asinkron/menunggu), Anda dapat melakukan permintaan jaringan yang panjang tanpa memblokir utas utama.

Javascript Synchronous 

JavaScript Synchronous: Seperti namanya, Synchronous berarti berada dalam urutan, yaitu setiap pernyataan kode dieksekusi satu per satu. Jadi, pada dasarnya sebuah pernyataan harus menunggu pernyataan sebelumnya untuk dieksekusi.

Contoh Javascript Synchronous 

// This function is synchronous

function log(arg) {

    console.log(arg)

}


log(1);


JavaScript Asynchronous

JavaScript Asynchronous: Kode asynchronous memungkinkan program untuk dieksekusi segera di mana kode sinkron akan memblokir eksekusi lebih lanjut dari kode yang tersisa sampai menyelesaikan yang sekarang. Ini mungkin tidak terlihat seperti masalah besar tetapi ketika Anda melihatnya dalam gambaran yang lebih besar, Anda menyadari bahwa itu dapat menyebabkan penundaan Antarmuka Pengguna.

Contoh Javascript Asynchronous 

// This function is asynchronous

setTimeout(() => {

    console.log(2)

}, 0);

log(3)


Perbedaan Synchronous dan Asynchronous

Synchronous

  • Menghentikan eksekusi kode lebih lanjut sampai ini selesai.
  • Karena ini penghentian eksekusi lebih lanjut, kode sinkron disebut 'pemblokiran'. Pemblokiran dalam arti tidak ada kode lain yang akan dieksekusi.


Asynchronous

  1. Eksekusi ini ditangguhkan ke loop acara, ini adalah konstruksi di mesin virtual JS yang menjalankan fungsi asinkron (setelah tumpukan fungsi sinkron kosong).
  2. Kode asinkron disebut non-blocking karena tidak memblokir kode lebih lanjut agar tidak berjalan.

Sekian artikel mengenai Synchronous dan Asynchronous in JavaScript semoga artikel ini memberikan insight atau informasi yang anda butuhkan. Dan dapat membantu kamu yang sedang mempelajari Bahasa Pemrograman Javascript.

Javascript merupakah Bahasa yang masih sangat worth it untuk dipelajari karena hampir semua browser menjalankan Javascript, walaupun ada Typscript namun unjung-ujungnya juga di konversi ke JS, selan itu JS juga memiliki kemampuan untuk support multi platform, mulai dari Web, Backend, Desktop, Frontend dan Bahkan Mobile Platform seperti React Native dan iONIC.

Baca Juga: