Melalui jaringan backlink yang kami miliki merupakan penyedia jasa backlink menerima berbagai backlink Indonesia dengan layanan jasa backlink murah yang kami kelola secara manual dan profesional. Kami menawarkan jasa backlink terbaik. Bagaimana cara membeli backlink dari kami?. Silahkan 👉 Hubungi Kami! harga sangat terjangkau!

Content Placement

Berikut adalah daftar 50 situs Jaringan Backlink kami!
01. Backlink Indonesia 26. Iklan Maluku Utara
02. Backlink Termurah 27. Iklan Nusa Tenggara Barat
03. Cara Membeli Backlink 28. Iklan Nusa Tenggara Timur
04. Iklan Aceh 29. Iklan Online Indonesia
05. Iklan Bali 30. Iklan Papua
06. Iklan Bangka Belitung 31. Iklan Papua Barat
07. Iklan Banten 32. Iklan Riau
08. Iklan Bengkulu 33. Iklan Semesta
09. Iklan Dunia 34. Iklan Sulawesi Barat
10. Iklan Gorontalo 35. Iklan Sulawesi Selatan
11. Iklan Internet 36. Iklan Sulawesi Tengah
12. Iklan Jakarta 37. Iklan Sulawesi Tenggara
13. Iklan Jambi 38. Iklan Sulawesi Utara
14. Iklan Jawa Barat 39. Iklan Sumatra Barat
15. Iklan Jawa Tengah 40. Iklan Sumatra Selatan
16. Iklan Jawa Timur 41. Iklan Sumatra Utara
17. Iklan Kalimantan Barat 42. Iklan Terbaru
18. Iklan Kalimantan Selatan 43. Iklan Yogyakarta
19. Iklan Kalimantan Tengah 44. Jaringan Backlink
20. Iklan Kalimantan Timur 45. Jasa Backlink
21. Iklan Kalimantan Utara 46. Jasa Backlink Murah
22. Iklan Kepulauan Riau 47. Jasa Backlink Terbaik
23. Iklan Lampung 48. Jasa Backlink Termurah
24. Iklan Link 49. Media Backlink
25. Iklan Maluku 50. Raja Backlink

Kami jaringan backlink sebagai media backlink bisa juga menerima content placement yakni jasa backlink termurah kami di dalam artikel. Pesan segera jasa backlink termurah ini. Karena kami adalah raja backlink yang sebenarnya!

Peluang Agen Iklan Online

Cara Membuat Callback Function di Javascript

Info informasi Cara Membuat Callback Function di Javascript atau artikel tentang Cara Membuat Callback Function di Javascript ini semoga dapat bermanfaat, dan menambah wawasan. Selamat Membaca! Jangan lupa dishare juga! Jika merasa artikel ini bermanfaat juga untuk orang lain.
Hal yang membuat bingung ketika kita bekerja dengan synchronous dan asynchronous program adalah bagaimana menangani suatu nilai yang didapatkan secara asynchronous pada program yang berjalan secara synchronous. 


Contohnya seperti kode berikut:

  1. const getCake = () => {

  2.  let cake = null;

  3.  console.log("Sedang membuat kue, silakan tunggu ....")

  4.  setTimeout(() => {

  5.    cake = "Kue Selesai!"

  6.  }, 3000)

  7.  return cake;

  8. }

  9.  

  10. const cake = getCake();

  11. console.log(cake);

  12.  

  13. /*output:

  14. Sedang membuat kue, silakan tunggu ....

  15. null

  16. */


Jika kita melakukan hal seperti ini untuk mencetak nilai cake yang sesungguhnya, maka hal tersebut tidak akan pernah terjadi. Karena seperti yang sudah kita ketahui fungsi setTimeout() tidak akan menghentikan JavaScript untuk mengeksekusi kode yang ada selanjutnya. Jadi fungsi getCake() akan selalu mengembalikan nilai null, karena kode return cake akan dieksekusi terlebih dahulu dibandingkan dengan cake = “Kue Selesai!”. Kode asynchronous perlu disusun dengan cara yang berbeda dari synchronous code. Cara paling dasar adalah dengan menggunakan callback function.
Apa itu callback function? Mari kita bayangkan kembali melalui pandangan dunia nyata. Kita menunggu pesanan kopi datang di meja kita tapi , pada saat itu juga kita tidak bisa berada terus di tempat itu karena ada urusan mendadak. Pada kasus ini mungkin terdapat dua aksi yang bisa kita lakukan:
  • (Synchronous) Kita tetap menunggu di meja hingga kopi itu datang dan kemudian meninggalkan kedai kopi.
  • (Asynchronous) Kita meminta tolong kepada teman kita untuk menerima kopi itu, dan bertemu nanti untuk memberikan kopinya. Sehingga kita tidak perlu menunggu untuk meninggalkan kedai kopi.
Nah pada JavaScript, teman kita berperan layaknya callback function. Ia diperintahkan pada sebuah fungsi asynchronous kemudian akan dipanggil/digunakan ketika tugas itu selesai.
Bagaimana cara melakukannya? Yang pertama kita tambahkan parameter dengan nama callback pada fungsi asynchronous.

  1. const getCake = callback => {

  2.  let cake = null;

  3.  console.log("Sedang membuat kue, silakan tunggu ....")

  4.  setTimeout(() => {

  5.    cake = "Kue Selesai!";

  6.  }, 3000)

  7.  return cake;

  8. }


Kemudian kita panggil/gunakan callback yang diisikan dengan data yang akan dibawa (cake) ketika task selesai dilakukan.

  1. setTimeout(function() {

  2.    cake = "Kue Selesai!";

  3.    callback(cake);

  4. }, 3000)


Setelah menggunakan callback, fungsi tidak perlu lagi mengembalikan nilai. Sehingga kita bisa hapus kode return cake;. Sehingga keseluruhan fungsi akan tampak seperti ini:

  1. const getCake = callback => {

  2.  let cake = null;

  3.  console.log("Sedang membuat kue, silakan tunggu ....")

  4.  setTimeout(() => {

  5.    cake = "Kue Selesai!";

  6.    callback(cake);

  7.  }, 3000)

  8. }


Kemudian untuk menggunakan fungsi getCake, kita ubah kode dari:

  1. const cake = getCake();

  2. console.log(cake);


Menjadi:

  1. getCake(cake => {

  2.  console.log(cake);

  3. })


Sehingga ketika dijalankan akan sesuai dengan harapan kita.

  1. const getCake = callback => {

  2.  let cake = null;

  3.  console.log("Sedang membuat kue, silakan tunggu ....")

  4.  setTimeout(() => {

  5.    cake = "Kue Selesai!";

  6.    callback(cake);

  7.  }, 3000)

  8. }

  9.  

  10. getCake(cake => {

  11.  console.log(cake);

  12. })

  13.  

  14. /* output:

  15. Sedang membuat kue, silakan tunggu ....

  16. ---- setelah 3 detik ----

  17. Kue Selesai!

  18. */



Callback Hell

Kita sudah mengetahui bahwa callback dibutuhkan untuk mendapatkan nilai yang berasal dari asynchronous function. Lantas bagaimana jika terdapat proses satu sama lain yang saling bergantungan? Contohnya, untuk membuat kue tahapan yang perlu kita lakukan adalah:
  1. Mempersiapkan bahan
  2. Membuat adonan
  3. Menyiapkan adonan ke cetakan
  4. Memanggang adonan
Tahapan tersebut sangat tergantung satu sama lain. Kita tidak bisa memanggang adonan sebelum membuat adonannya, dan kita tidak bisa membuat adonan tanpa mempersiapkan bahannya terlebih dahulu. Jika seluruh tahapan tersebut berjalan secara synchronous, mungkin kita bisa melakukanya seperti ini:

  1. function makeACake(...rawIngredients) {

  2.  const ingredients = gatheringIngredients(rawIngredients),

  3.  dough = makeTheDough(ingredients),

  4.  pouredDough = pourDough(dough),

  5.  cake = bakeACake(pourDough),

  6.  console.log(cake);

  7. }


Namun jika fungsi-fungsi tersebut berjalan secara asynchronous, maka kita akan membuat yang namanya callback hell. Callback hell terjadi karena banyak sekali callback function yang bersarang karena saling membutuhkan satu sama lain, sehingga kode akan tampak seperti ini:

  1. function makeACake(...rawIngredients) {

  2.  gatheringIngredients(rawIngredients, function(ingridients) {

  3.    makeTheDough(ingridients, function(dough) {

  4.      pourDough(dough, function(pouredDough) {

  5.        bakeACake(pouredDough, function(cake) {

  6.          console.log(cake);

  7.        });

  8.      });

  9.    });

  10.  });

  11. }


Melihat kode seperti ini saja, kepala jadi pusing. Terbayang sulitnya memelihara kode ini di masa yang akan datang.
Lantas apa solusi agar kita dapat menghindari callback hell? Salah satunya adalah dengan menggunakan Promise.

  1. function makeACake(...rawIngredients) {

  2.  gatheringIngredients(rawIngredients)

  3.  .then(makeTheDough)

  4.  .then(pourDough)

  5.  .then(bakeACake)

  6.  .then(console.log);

  7. }


Dengan Promise, kita dapat meminimalisir callback hell dan mengubahnya menjadi kode yang sangat mudah dibaca. Bahkan dengan kode seperti itu, non-developer pun dapat mengerti apa maksud dari kode tersebut


Demikian artikel tentang Cara Membuat Callback Function di Javascript ini dapat kami sampaikan, semoga artikel atau info tentang Cara Membuat Callback Function di Javascript ini, dapat bermanfaat. Jangan lupa dibagikan juga ya! Terima kasih banyak atas kunjungan nya.