Rumah >hujung hadapan web >tutorial js >Mengapa Fungsi `setTimeout` JavaScript Saya Melaksanakan Serta-merta?

Mengapa Fungsi `setTimeout` JavaScript Saya Melaksanakan Serta-merta?

Barbara Streisand
Barbara Streisandasal
2024-12-23 08:56:10531semak imbas

Why Does My JavaScript `setTimeout` Function Execute Instantly?

Memahami Gelagat setTimeout dalam JavaScript

Apabila cuba melaksanakan kelewatan masa menggunakan fungsi setTimeout, adalah penting untuk memahami sebab fungsi tersebut boleh melaksanakan serta-merta dan bukannya menunggu tempoh yang dimaksudkan.

The Isu:

Dalam kod anda, anda tersilap menggunakan fungsi testfunction() serta-merta dan seterusnya menghantar nilai pulangannya kepada setTimeout untuk penjadualan. Ini membawa kepada pelaksanaan segera fungsi.

Penyelesaian:

Sintaks yang betul melibatkan mengalih keluar kurungan daripada panggilan fungsi:

setTimeout(testFunction, 2000);

Dengan meninggalkan kurungan, anda menghantar rujukan kepada fungsi itu sendiri kepada setTimeout dan bukannya melaksanakannya serta-merta dan membekalkan nilai pulangannya. Ini memastikan bahawa pelaksanaan fungsi dijadualkan pada kelewatan yang ditentukan.

Jadi, untuk melaksanakan testFunction dengan kelewatan 2 saat, gunakan sintaks ini:

setTimeout(testFunction, 2000);

Atas ialah kandungan terperinci Mengapa Fungsi `setTimeout` JavaScript Saya Melaksanakan Serta-merta?. 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