Rumah >hujung hadapan web >tutorial js >Bila hendak menggunakan kurungan dengan Rujukan Fungsi JavaScript?

Bila hendak menggunakan kurungan dengan Rujukan Fungsi JavaScript?

Patricia Arquette
Patricia Arquetteasal
2024-12-05 10:27:13618semak imbas

When to Use Parentheses with JavaScript Function References?

Bila Menggunakan Tanda Kurung dan Bila Tidak?

Dalam JavaScript, amat penting untuk memahami bila hendak menggunakan kurungan dan apabila tidak, terutamanya dengan fungsi rujukan. Pertimbangkan kod berikut:

var myFunction = function() {
   setTimeout(myFunction, 1000);
}
myFunction();

Mengapakah fungsi memanggil dalam setTimeout tidak memerlukan kurungan, manakala baris terakhir memerlukannya?

Ringkasnya

  • myFunction merujuk fungsi
  • myFunction() memanggil fungsi

Penjelasan Terperinci

setTimeout menerima rujukan fungsi sebagai hujah. Dalam baris pertama, setTimeout(myFunction, 1000) melepasi rujukan fungsi tanpa kurungan kerana ia menjangkakan rujukan.

Walau bagaimanapun, dalam baris terakhir, myFunction() sebenarnya memanggil fungsi tersebut. Untuk memanggil fungsi, kami menggunakan kurungan untuk melaksanakannya. Oleh itu, myFunction() melaksanakan fungsi dan oleh itu memerlukan kurungan.

Exception

Mungkin terdapat keadaan di mana setTimeout(myFunction(), 1000) adalah sesuai, seperti apabila myFunction() mengembalikan fungsi. Contohnya:

function myFunction() {
    return function() {
        alert("ohai")
    }
}

// Or

const myFunction = () => () => alert("ohai")

Dalam kes ini, setTimeout(myFunction(), 1000):

  • Memanggil fungsi luar myFunction
  • Mendapatkan nilai pulangan, yang merupakan fungsi dalam
  • Melalukan fungsi dalam sebagai hujah kepada setTimeout

Ini menghasilkan makluman setiap saat.

Kesimpulan

Memahami tujuan kurungan dalam rujukan fungsi adalah penting untuk JavaScript yang berkesan pengaturcaraan. Dengan mengingati bahawa kurungan menunjukkan panggilan fungsi, anda boleh menggunakannya dengan betul untuk memanggil fungsi atau menghantar rujukan fungsi seperti yang diperlukan.

Atas ialah kandungan terperinci Bila hendak menggunakan kurungan dengan Rujukan Fungsi JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn