Fungsi lulus javascript sebagai parameter dengan argumen

Contoh. Berfungsi sebagai Parameter

// program to pass a function as a parameter

function greet() {
    return 'Hello';
}

// passing function greet() as a parameter
function name(user, func)
{

    // accessing passed function
    const message = func();

    console.log(`${message} ${user}`);
}

name('John', greet);
name('Jack', greet);
name('Sara', greet);

Keluaran

Hello John
Hello Jack
Hello Sara
_

Dalam program di atas, ada dua fungsi. name() dan greet()

  • Fungsi name()_ mengambil dua parameter
  • Fungsi greet() diteruskan sebagai argumen ke fungsi name()

Dalam JavaScript, meneruskan suatu fungsi sebagai parameter ke fungsi lain mirip dengan meneruskan nilai. Cara untuk meneruskan suatu fungsi adalah dengan menghapus tanda kurung () dari fungsi tersebut saat Anda menetapkannya sebagai parameter

Pada bagian berikut, pass fungsi didemonstrasikan sebagai parameter

Lewati Fungsi JavaScript Umum sebagai Parameter

Untuk drive ini, kami akan memulai fungsi func2 dengan badan kode dan langsung meneruskannya ke fungsi func1. Nanti, setelah menugaskan func2 ke func1, kami akan memanggil func2 alias function_parameter

function func1(function_parameter){
  function_parameter();
}

function func2(){
  console.log("okay!");
}

func1(func2);

Keluaran

Fungsi lulus javascript sebagai parameter dengan argumen

Namun terkadang Anda mungkin ingin meneruskan fungsi dengan menyertakan argumen, tetapi tidak memanggilnya hingga panggilan balik dipanggil. Untuk melakukan ini, saat memanggilnya, bungkus saja dengan fungsi anonim, seperti ini

function foo(x) {
   alert(x);
}
function bar(func) {
   func();
}

//alerts "Hello World!" (from within bar AFTER being passed)
bar(function(){ foo("Hello World!") });

Jika mau, Anda juga bisa menggunakan fungsi apply dan memiliki parameter ketiga yang merupakan larik argumen, seperti itu

function eat(food1, food2)
{
    alert("I like to eat " + food1 + " and " + food2 );
}
function myFunc(callback, args)
{
    //do stuff
    //...
    //execute callback when finished
    callback.apply(this, args);
}

//alerts "I like to eat pickles and peanut butter"
myFunc(eat, ["pickles", "peanut butter"]); 

Sumber. https. //stackoverflow. com

Berikan komentar jika Anda memiliki keraguan atau saran tentang topik fungsi JS ini

Catatan. Semua kode Contoh JS diuji di browser Firefox dan browser Chrome

OS. Windows 10

Kode. Versi HTML5

Fungsi lulus javascript sebagai parameter dengan argumen

Rohit

Gelar dalam Ilmu Komputer dan Insinyur. Pengembang Aplikasi dan memiliki banyak pengalaman bahasa Pemrograman. Antusias terhadap teknologi & suka belajar teknis

Bagaimana cara melewatkan fungsi dengan argumen dalam JavaScript?

Argumen Disampaikan oleh Nilai . Argumen JavaScript diteruskan oleh nilai. Fungsi hanya mengetahui nilai, bukan lokasi argumen. Jika suatu fungsi mengubah nilai argumen, itu tidak mengubah nilai asli parameter.

Bagaimana Anda melewatkan Fungsi sebagai parameter?

Panggilan Fungsi . Gunakan nama fungsi (tanpa tanda kurung) untuk ini. func(cetak); . the value passed must be a pointer to a function. Use the function's name (without parentheses) for this: func(print); would call func , passing the print function to it.

Bisakah Anda meneruskan fungsi sebagai argumen ke fungsi lain?

Karena fungsi adalah objek, kita dapat meneruskannya sebagai argumen ke fungsi lain . Fungsi yang dapat menerima fungsi lain sebagai argumen juga disebut fungsi tingkat tinggi. Pada contoh di bawah ini, sebuah fungsi salam dibuat yang menggunakan fungsi sebagai argumen.

Apakah ada fungsi pass di JavaScript?

Dalam Pass by Reference, sebuah fungsi dipanggil dengan langsung meneruskan referensi/alamat variabel sebagai argumen . Mengubah argumen di dalam fungsi memengaruhi variabel yang dikirimkan dari luar fungsi. Dalam objek dan array Javascript dilewatkan dengan referensi.