belajar promise asnyc await di javascript – Halo.. Selamat datang di artikel Referensi Coding kali ini. Di kesempatan kali ini saya akan kasih ilmu seputar pemrograman web. Sesuai judul, artikel kali ini akan membahas bahasa pemrograman yang lumayan populer di kalangan developer web, yaitu javascript.
Javascript itu bahasa pemrograman yang awalnya digunakan bagi client side. Namun kini, bahasa ini udah dapat digunakan di server side. Dan udah mulai banyak developer yang murtad dari bahasa server side yang tenar sebelumnya, yaitu PHP, ke Javascript.
Ketika belajar javascript, hal yang lumayan merancang perut saya bingung dan kepala saya mules yakni sifat asyncronusnya. Seperti yang kita ketahui, Asyncronus memang udah jadi sifat javascript sejak dilahirkan.
Sifat Asyncronus Tuh Paan?
Bicara soal Asyncronus, karenanya kita akan kenalan sama lawannya, yaitu Syncronus
Syncronus yakni proses pemuatan kode yang prosesnya berjalan secara bergantian. Sekiranya kode sebelumnya belum dieksekusi, karenanya kode berikutnya mesti menunggu result dari guna kode sebelumnya. Sekiranya telah, baru kode berikutnya berjalan.
Sedangkan Asyncronus yakni proses pemuatan kode yang berjalan gak kenal tunggu-tungguan. Walaupun kode sebelumnya masih proses eksekusi, kode lain telah dijalankan duluan..
(le asyncronus: bodok amat anying.. seketika gasak aee)
Berikut ini gambarannya..
Sifat asyncronus ini bermanfaat banget bagi merancang situs web yang lebih cepat. Namun di beberapa kasus, sifat ini justru mengganggu.
Karena banyaknya masalah yang timbul, karenanya munculah fitur baru dari javascript yang bernama Promise.
Promise Tuh Paan?
Sepertinya setelah baca review saya tadi, pembaca yang cerdas dan soleh udah tau apa itu Promise.
Promise yakni blok kode yang digunakan bagi menghandle sifat asyncronus javascript. Cara kerjanya dengan ngasih command ke sebuah guna kode agar dieksekusi setelah kode sebelumnya selesai dijalankan. Sintak yang digunakan bagi memberi command ke blok kode yakni async dan await.
Berikut ini struktur kode dari promise
let variable_contoh = new Promise((resolve, reject) => {
//
})
Sintak async digunakan bagi function yang ingin dijalankan secara syncronus, dan await digunakan bagi blok kode yang mesti dijalankan setelah seluruh kode pada sintak async keload. Pusing..? :V
Dari awal sampe sini kan udah teori seluruh. Kini kita seketika praktek ke kodenya supaya lebih paham.
Contoh Sifat Asyncronus.
function contoh() {
setTimeout(function() {
console.log("Saya duluan")
}, 1000)
console.log("Saya belakangan")
}
contoh() // menjalankan guna contoh
resultnya pasti akan keluar “Saya belakangan” di log. Kemudian selang 1 detik, baru keluar “Saya duluan”. Padahal log “Saya duluan” ditulis duluan.. :v
Itu akibat dari sifat asyncronus. Karena kode masih diproses dalam kurun waktu 1 detik, program seketika gasak kode berikutnya.
Handle Asyncronus dengan Promise
async function contoh() {
let promise = new Promise((resolve, reject) => {
setTimeout(() => resolve("Saya duluan"), 1000)
})
let hasil = await promise // menunggu hasil promise
console.log(hasil)
console.log('Saya belakangan')
}
contoh() // menjalankan guna contoh
hasilnya akan keluar “Saya duluan” di log dengan selang 1 detik, kemudian baru diikuti “Saya belakangan”.
Ternyata belajar beginian bingungnya udah lama, baru tau jalan mudahnya.. wkwk
Oke, sekain artikel kali ini mengenai cara handle asyncronus javascript. Semoga bermanfaat! Terima kasih!