Rumah > hujung hadapan web > tutorial js > Bilakah Tanda Kurung Penting dalam Panggilan Fungsi JavaScript?

Bilakah Tanda Kurung Penting dalam Panggilan Fungsi JavaScript?

Linda Hamilton
Lepaskan: 2024-11-25 14:56:11
asal
345 orang telah melayarinya

When Do Parentheses Matter in JavaScript Function Calls?

Kurungan dalam Pengisytiharan Fungsi lwn. Seruan

Dalam JavaScript, perbezaan antara pengisytiharan fungsi dan seruan muncul dalam sintaksnya. Walaupun pengisytiharan fungsi berakhir dengan kurung kurawal, seruan fungsi berakhir dengan kurungan.

Pertimbangkan contoh berikut:

var myFunction = function() {
  setTimeout(myFunction, 1000);
}
myFunction();
Salin selepas log masuk

Di sini, fungsi setTimeout mengharapkan rujukan fungsi sebagai argumen. Apabila anda menulis myFunction, anda merujuk fungsi itu sendiri. Sebaliknya, myFunction() sebenarnya memanggil fungsi tersebut.

Walaupun ini nampak mudah, terdapat pengecualian. setTimeout juga boleh menerima fungsi yang mengembalikan fungsi, seperti dalam kod berikut:

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

// or

const myFunction = () => () => alert("ohai");
Salin selepas log masuk

Dalam senario ini, setTimeout(myFunction(), 1000) akan:

  1. Panggil fungsi myFunction dan simpan nilai pulangannya.
  2. Dapatkan fungsi yang myFunction dikembalikan.

Ini secara berkesan menjadualkan amaran untuk dipaparkan setiap saat.

Oleh itu, perbezaan utama ialah apabila anda meninggalkan kurungan, anda merujuk objek fungsi itu sendiri. Apabila anda memasukkan kurungan, anda menggunakan fungsi tersebut. Ini terpakai pada pengisytiharan fungsi, seperti var myFunction = function() { ... } dan ungkapan fungsi, seperti const myFunction = () => { ... }.

Atas ialah kandungan terperinci Bilakah Tanda Kurung Penting dalam Panggilan Fungsi JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan