Rumah >hujung hadapan web >tutorial js >Bagaimanakah Tanda Kurung, Petikan dan Tiada Petikan Mempengaruhi Gelagat `setTimeout` dalam JavaScript?

Bagaimanakah Tanda Kurung, Petikan dan Tiada Petikan Mempengaruhi Gelagat `setTimeout` dalam JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-12-29 05:35:10533semak imbas

How Do Parentheses, Quotes, and No Quotes Affect `setTimeout` Behavior in JavaScript?

Memahami Perbezaan dalam Penggunaan setTimeout

Dalam JavaScript, setTimeout membenarkan anda menjadualkan fungsi untuk dilaksanakan selepas kelewatan yang ditentukan. Terdapat beberapa cara untuk menggunakan setTimeout dengan pelbagai sintaks.

1. dengan Tanda Kurung:

setTimeout(() => console.log("Callback"), 1000);

Dalam senario ini, fungsi anak panah tanpa nama dihantar sebagai panggilan balik dan tanda kurung di sekelilingnya menunjukkan bahawa ia sedang dilaksanakan serta-merta dan diluluskan sebagai rujukan kepada setTimeout.

2. Tanpa Petikan atau Tanda Kurung:

setTimeout(callbackFunction, 1000);

Di sini, callbackFunction ialah fungsi pratakrif yang diluluskan sebagai panggilan balik tanpa sebarang petikan atau kurungan. Rujukan fungsi dilaksanakan apabila kelewatan selesai.

3. Hanya Menggunakan Petikan:

setTimeout("alertMsg()", 1000);

Penggunaan ini sangat tidak digalakkan kerana ia boleh membawa kepada kelemahan keselamatan. Ia memerlukan fungsi untuk ditakrifkan sebagai pembolehubah global dan menggunakan rentetan yang mengandungi nama fungsi. Rentetan ini kemudiannya dinilai dan dilaksanakan sebagai skrip.

Perbezaan Utama:

  • Kurungan: Nyatakan pelaksanaan segera fungsi panggil balik , meneruskannya sebagai a rujukan.
  • Petikan: Benarkan rentetan yang mengandungi nama fungsi dilaksanakan, tetapi ini tidak selamat.
  • Tiada Petikan atau Tanda Kurung: Lulus rujukan fungsi secara langsung sebagai panggilan balik.

Atas ialah kandungan terperinci Bagaimanakah Tanda Kurung, Petikan dan Tiada Petikan Mempengaruhi Gelagat `setTimeout` dalam 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