Parameter Fungsi yang Dipindahkan dalam JavaScript
Katakan kita mempunyai fungsi test yang
menerima fungsi lain sebagai parameter dan
mencetak hasil fungsi yang dipindahkan itu ke konsol:
function test(func) {
console.log( func() );
}
Katakan fungsi yang dipindahkan func
menerima nombor sebagai parameter dan melakukan
sesuatu dengannya. Mari kita berikan
ia, sebagai contoh, nombor 3:
function test(func) {
console.log( func(3) );
}
Sekarang mari kita panggil fungsi test,
dengan memberikan fungsi tanpa nama sebagai parameternya.
Fungsi tanpa nama ini akan menerima
nombor sebagai parameter dan mengembalikan kuasa dua nombor tersebut.
Hasilnya, keseluruhan konstruksi ini
akan mencetak kuasa dua nombor 3, iaitu 9:
// Akan mencetak 9:
test(
function(num) {
return num * num;
}
);
function test(func) {
console.log(func(3));
}
Mari kita susun kod dengan lebih elegan:
// Akan mencetak 9:
test(function(num) {
return num * num;
});
function test(func) {
console.log(func(3));
}
Salin kod fungsi test saya.
Panggil fungsi ini, dengan memberikan
fungsi tanpa nama sebagai parameternya,
yang akan menerima nombor sebagai parameter
dan mengembalikan kuasa tiga nombor tersebut.
Ubah suai kod anda supaya fungsi yang
dipindahkan bukannya tanpa nama, tetapi ditakrifkan
sebagai Function Declaration dengan nama func.
Ubah suai fungsi yang dipindahkan kepada Function
Expression dengan nama yang sama func.
Katakan fungsi yang dipindahkan kini menerima
dua parameter dan mengembalikan jumlahnya. Apabila
fungsi yang dipindahkan dipanggil di dalam test
berikan nombor 2
dan nombor 3 kepada fungsi yang dipindahkan. Cetak hasilnya.