Javascript IIFE

IIFE (Immediately Invoked Function Expression) merupakan sebuah terminologi ketika anda ingin mengeksekusi sebuah function secepatnya setelah didefinisikan. Hal tersebut dapat membuat kode lebih bersih, misalnya ketika melakukan debugging pada Async/Pr…


This content originally appeared on DEV Community and was authored by Khafid Prayoga

IIFE (Immediately Invoked Function Expression) merupakan sebuah terminologi ketika anda ingin mengeksekusi sebuah function secepatnya setelah didefinisikan. Hal tersebut dapat membuat kode lebih bersih, misalnya ketika melakukan debugging pada Async/Promise based function.

Pada skenario dibawah ini saya akan mensimulasikan sebuah function yang melakukan request ke API server.

const data = (number) =>
  new Promise((resolve, reject) => {
    if (number === 200) resolve("200 OK");
    else reject("400 Bad Request");
  });

Dibelakang layar apabila fungsi dipanggil dan number memiliki argumen bernilai 200, object tersebut akan mendapatkan state resolve. Jika number berisi selain 200 maka akan mendapatkan state reject.

Kemudian kita akan memanggil function tersebut dengan cara pemanggilan pada umumnya.

const fetchData = async () => {
  try {
    const response = await data(200);
    console.log(response);
  } catch (err) {
    console.error(err);
  }
};

fetchData();

Terlihat setelah kita menginisialisasikan fetchData kemudian kita memanggilnya dengan menggunakan parentheses.

Dengan mengunakan IIFE anda hanya memerlukan double-parentheses ()(). Parentheses pertama diinterpretasikan sebagai expressions dan yang kedua sebagai function call.
Berikut contoh kode yang digunakan untuk mengkonsumsi API dari server menggunakan metode IIFE.

(async () => {
  try {
    const response = await data(200);
    console.log(response);
  } catch (err) {
    console.error(err);
  }
})();

Output:
200 OK

Referensi:
MDN - IIFE


This content originally appeared on DEV Community and was authored by Khafid Prayoga


Print Share Comment Cite Upload Translate Updates
APA

Khafid Prayoga | Sciencx (2022-01-30T09:57:48+00:00) Javascript IIFE. Retrieved from https://www.scien.cx/2022/01/30/javascript-iife/

MLA
" » Javascript IIFE." Khafid Prayoga | Sciencx - Sunday January 30, 2022, https://www.scien.cx/2022/01/30/javascript-iife/
HARVARD
Khafid Prayoga | Sciencx Sunday January 30, 2022 » Javascript IIFE., viewed ,<https://www.scien.cx/2022/01/30/javascript-iife/>
VANCOUVER
Khafid Prayoga | Sciencx - » Javascript IIFE. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2022/01/30/javascript-iife/
CHICAGO
" » Javascript IIFE." Khafid Prayoga | Sciencx - Accessed . https://www.scien.cx/2022/01/30/javascript-iife/
IEEE
" » Javascript IIFE." Khafid Prayoga | Sciencx [Online]. Available: https://www.scien.cx/2022/01/30/javascript-iife/. [Accessed: ]
rf:citation
» Javascript IIFE | Khafid Prayoga | Sciencx | https://www.scien.cx/2022/01/30/javascript-iife/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.