Janji dan panggilan balik dalam JavaScript

May 07 2023
Janji dan panggilan balik adalah konsep penting dalam JavaScript, yang digunakan untuk mengelola kode asinkron. Mari kita lihat contoh program yang mendemonstrasikan bagaimana promise dan callback dapat digunakan dalam JavaScript.
Foto oleh Juanjo Jaramillo di Unsplash

Janji dan panggilan balik adalah konsep penting dalam JavaScript, yang digunakan untuk mengelola kode asinkron. Mari kita lihat contoh program yang mendemonstrasikan bagaimana promise dan callback dapat digunakan dalam JavaScript.

```javascript

// Fungsi ini mengembalikan janji yang diselesaikan setelah penundaan yang ditentukan

penundaan fungsi (md) {

kembalikan Janji baru(resolve => setTimeout(resolve, ms));

}

// Fungsi ini mengambil fungsi panggilan balik dan memanggilnya setelah penundaan yang ditentukan

function delayCallback(ms, callback) {

setTimeout(panggilan balik, ms);

}

// Menggunakan Janji

console.log(“Menggunakan Janji:”);

console.log(“Mulai”);

delay(2000).then(() => {

console.log(“Penundaan 1 — Terselesaikan”);

});

tunda(3000).lalu(() => {

console.log(“Penundaan 2 — Terselesaikan”);

});

console.log(“Akhir”);

// Menggunakan Callback

console.log(“Menggunakan Callback:”);

console.log(“Mulai”);

delayCallback(2000, () => {

console.log(“Panggilan Balik Tertunda 1”);

});

delayCallback(3000, () => {

console.log(“Panggilan Balik Tertunda 2”);

});

console.log(“Akhir”);

```

Dalam program contoh ini, kami mendefinisikan dua fungsi: `delay` dan `delayedCallback`.

Fungsi `delay` mengembalikan janji yang diselesaikan setelah penundaan yang ditentukan. Dibutuhkan parameter `ms`, yang menentukan penundaan dalam milidetik. Saat janji diselesaikan, fungsi `resolve` dipanggil, yang hanya menyelesaikan janji.

Fungsi `delayedCallback` membutuhkan dua parameter: `ms`, yang menentukan penundaan dalam milidetik, dan `callback`, yang merupakan fungsi yang akan dipanggil setelah penundaan yang ditentukan. Fungsi ini cukup memanggil fungsi `setTimeout` dengan fungsi penundaan dan panggilan balik yang ditentukan.

Kami kemudian menggunakan fungsi ini untuk menunjukkan bagaimana janji dan panggilan balik dapat digunakan untuk mengelola kode asinkron. Di bagian pertama, kami menggunakan promise untuk menunda eksekusi dua pernyataan console.log. Kami menggunakan fungsi `delay` untuk membuat dua janji dengan penundaan masing-masing 2 dan 3 detik, lalu menggunakan metode `then` untuk mencatat pesan saat setiap janji diselesaikan.

Di bagian kedua, kami menggunakan callback untuk menunda eksekusi dua pernyataan console.log. Kami menggunakan fungsi `delayedCallback` untuk membuat dua panggilan balik dengan penundaan masing-masing 2 dan 3 detik, lalu meneruskan setiap fungsi panggilan balik ke fungsi `setTimeout`.

Saat kita menjalankan program ini, kita dapat melihat bahwa promise dan callback keduanya dapat menunda eksekusi pernyataan console.log, tetapi keduanya melakukannya dengan cara yang berbeda. Promise menggunakan metode `then` untuk mengeksekusi kode saat promise diselesaikan, sedangkan callback meneruskan fungsi ke fungsi `setTimeout` untuk dieksekusi setelah penundaan yang ditentukan.

Penggunaan Janji dan panggilan balik dalam JavaScript

Foto oleh Pankaj Patel di Unsplash

Janji dan panggilan balik adalah konsep penting dalam JavaScript yang digunakan untuk mengelola kode asinkron. Mari kita lihat penggunaan Janji dan panggilan balik dalam JavaScript:

1. Janji

Janji digunakan untuk mengelola kode asinkron dalam JavaScript. Mereka adalah objek yang mewakili nilai yang mungkin belum tersedia, tetapi akan diselesaikan di masa mendatang. Janji digunakan untuk mengelola kode yang perlu menunggu hasil dari operasi asinkron, seperti membuat panggilan API atau mengambil data dari database. Janji digunakan untuk menangani hasil operasi setelah selesai, baik berhasil atau dengan kesalahan.

2. Panggilan balik

Callback adalah fungsi yang diteruskan sebagai argumen ke fungsi lain dan dijalankan saat peristiwa tertentu terjadi. Mereka digunakan untuk mengelola kode asinkron dalam JavaScript dan untuk mengeksekusi kode setelah operasi tertentu selesai. Callback umumnya digunakan dengan event listener untuk mengeksekusi kode saat suatu peristiwa, seperti klik atau scroll, terjadi di halaman web. Mereka juga digunakan dengan fungsi asinkron untuk menangani hasil operasi setelah selesai.

Beberapa penggunaan Janji dan panggilan balik yang umum dalam JavaScript meliputi:

1. Melakukan panggilan API: Janji dan panggilan balik umumnya digunakan untuk melakukan panggilan API dalam JavaScript. Saat melakukan panggilan API, Janji dapat digunakan untuk menunggu respons dari server dan menangani hasil operasi setelah selesai. Fungsi panggilan balik dapat digunakan untuk menangani respons setelah diterima dari server.

2. Menangani input pengguna: Callback sering digunakan untuk menangani input pengguna dalam JavaScript. Misalnya, saat pengguna mengklik tombol di halaman web, fungsi callback dapat digunakan untuk mengeksekusi kode sebagai respons terhadap tindakan pengguna.

3. Mengambil data: Janji dan panggilan balik dapat digunakan untuk mengambil data dari server atau database. Saat mengambil data, Janji dapat digunakan untuk menunggu data diambil, sedangkan fungsi panggilan balik dapat digunakan untuk menangani hasil operasi setelah selesai.

4. Animasi dan transisi: Callback sering digunakan untuk menangani animasi dan transisi pada halaman web. Misalnya, fungsi callback dapat digunakan untuk mengeksekusi kode setelah animasi atau transisi selesai.

Secara keseluruhan, Janji dan panggilan balik sangat penting untuk mengelola kode asinkron dalam JavaScript dan digunakan dalam berbagai macam aplikasi, mulai dari membuat panggilan API hingga menangani input pengguna.