Diskusi Ibrahim Rama Kusuma

Selesai
Ibrahim Rama Kusuma
Ditanyakan pada: Map Method

callback function menggunakan kondisi if

Maaf kak, apa boleh saya minta contoh lebih lengkap tentang callback functionnya yang menggunakan kondisi if seperti pada menit 04:30 (https://pastebin.com/48CDUsdF)?

3 Jawaban

Avatar
Faisal Hanafi

setahun yang lalu

Berikut saya berikan sedikit contoh mengenai callback function dengan kondisi if

function calculate(num1, num2, operation, callback) {
  let result = null;
  
  if (operation === 'add') {
    result = num1 + num2;
  } else if (operation === 'subtract') {
    result = num1 - num2;
  } else if (operation === 'multiply') {
    result = num1 * num2;
  } else if (operation === 'divide') {
    result = num1 / num2;
  } else {
    callback(new Error('Invalid operation'));
    return;
  }
  
  callback(null, result);
}

function printResult(error, result) {
  if (error) {
    console.error(error);
  } else {
    console.log('Result:', result);
  }
}

calculate(10, 5, 'add', printResult); // Output: Result: 15
calculate(10, 5, 'subtract', printResult); // Output: Result: 5
calculate(10, 5, 'multiply', printResult); // Output: Result: 50
calculate(10, 5, 'divide', printResult); // Output: Result: 2
calculate(10, 5, 'modulus', printResult); // Output: Error: Invalid operation

Dapat kakak perhatikan di atas, fungsi calculate mengambil dua angka, sebuah operasi matematika, dan sebuah fungsi callback. Fungsi calculate menggunakan kondisi if untuk menentukan operasi matematika yang akan dilakukan dan kemudian memanggil fungsi callback dengan hasilnya. Jika operasi matematika tidak valid, maka fungsi calculate akan memanggil fungsi callback dengan sebuah objek error.

Fungsi callback printResult menerima dua argumen, yaitu error dan result. Jika error tidak null, maka akan mencetak error menggunakan console.error. Jika tidak, maka akan mencetak hasil menggunakan console.log.

Terakhir, fungsi calculate dipanggil beberapa kali dengan berbagai operasi matematika yang berbeda dan fungsi callback printResult sebagai argumen kedua.

Avatar
BroKoding

setahun yang lalu

Halo kak, callback function adalah sebuah fungsi yang dikirimkan sebagai parameter fungsi lainnya. Callback hanya sebuah istilah untuk function yang di passing ke dalam function lain sebagai argument, yang kemudian di eksekusi oleh function yang membungkus function callback tersebut. Dengan kata lain function callback akan di berlakukan sebagai value di dalam function lain sehingga function callback akan di ekseskusi setelah function yang membungkus function callback tersebut selesai di eksekusi.

Penjelasan singkat pada bagian tersebut maksudnya adalah pada callback function, kita bisa menggunakan kondisi (if) untuk menerapkan logika tertentu yang kita mau. Contoh pada array "angka" kita hanya ingin angka yang bernilai kurang dari 3, maka pada callback funciton nya kita tambahkan :

if (num <3) 
{
 return num;
}
Avatar
Levianth

setahun yang lalu

Halo kak :D

Mungkinkah pertanyaan ini belum terselesaikan atau kakaknya terlupakan untuk menutup pertanyaan ini jika kakak sudah merasa sudah selesai dari pertanyaan ini? Dan misalkan kakak rasa sudah terbantu dengan pertanyaan ini atas jawaban maintainer diatas maka terima kasih ya kak sudah bertanya di forum maintainer, dan jika kakak rasa memiliki pertanyaan lainnnya silahkan buka pertanyaan baru ya kak :D

Terima kasih~!