Rujukan Fungsi Berbanding Panggilan Fungsi: Membezakan Peranan Mereka
Dalam pengaturcaraan, membezakan antara rujukan fungsi dan panggilan fungsi adalah penting. Rujukan fungsi memegang alamat kepada fungsi, manakala panggilan fungsi melaksanakan fungsi dengan serta-merta.
Memahami Perbezaan
Pertimbangkan kod berikut:
function hello() { alert("hi!"); } var elem = document.getElementById("btn"); elem.onclick = hello;
Di sini, elem.onclick memberikan rujukan fungsi kepada sifat onclick. Rujukan menunjuk kepada fungsi hello tetapi tidak melaksanakannya. Ini adalah perlu kerana onclick menjangkakan rujukan kepada fungsi, bukan pelaksanaan fungsi.
Sebaliknya, pertimbangkan kod ini:
element.onclick = funcRef();
Kod ini melaksanakan fungsi funcRef serta-merta dan tetapkan nilai pulangannya (bukan rujukan) kepada sifat onclick. Elakkan pendekatan ini kerana ia boleh mengakibatkan tingkah laku yang tidak dijangka, terutamanya jika nilai pulangan itu sendiri bukan fungsi.
Garis Panduan untuk Rujukan Fungsi dan Panggilan Fungsi
funcRef();
element.onclick = function () { // Code here };
Ingat, perbezaan utama terletak pada sama ada fungsi itu harus dilaksanakan dengan segera atau jika hanya rujukan kepadanya diperlukan. Dengan menggunakan garis panduan ini, anda boleh mengurus rujukan fungsi dan panggilan fungsi dalam kod anda dengan berkesan.
Atas ialah kandungan terperinci Rujukan Fungsi lwn. Panggilan Fungsi: Bila hendak menggunakan yang mana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!