Bagaimana untuk menjeda dan menyambung semula setTimeout() tamat masa?
Anda boleh membalut fungsi window.setTimeout untuk mencipta pemasa tersuai yang menyokong jeda dan menyambung semula.
<code class="javascript">var Timer = function(callback, delay) { var timerId, start, remaining = delay; this.pause = function() { window.clearTimeout(timerId); timerId = null; remaining -= Date.now() - start; }; this.resume = function() { if (timerId) { return; } start = Date.now(); timerId = window.setTimeout(callback, remaining); }; this.resume(); };</code>
Bagaimana untuk mendapatkan baki masa pada tamat masa semasa?
Anda boleh gunakan sifat baki pemasa tersuai untuk mendapatkan baki masa pada tamat masa semasa.
<code class="javascript">var timer = new Timer(function() { alert("Done!"); }, 1000); console.log("Time remaining:", timer.remaining); // Output: 1000</code>
Contoh penggunaan:
<code class="javascript">timer.pause(); // Do some stuff... timer.resume();</code>
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Mengawal dan Menjejaki Tamat Masa dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!