Contoh: Buat Penghitung Waktu Mundur
// program to create a countdown timer
// time to countdown from (in milliseconds)
let countDownDate = new Date().getTime() + 24 * 60 * 60 * 1000;
// countdown timer
let x = setInterval(function() {
// get today's date and time in milliseconds
let now = new Date().getTime();
// find the interval between now and the countdown time
let timeLeft = countDownDate - now;
// time calculations for days, hours, minutes and seconds
const days = Math.floor( timeLeft/(1000*60*60*24) );
const hours = Math.floor( (timeLeft/(1000*60*60)) % 24 );
const minutes = Math.floor( (timeLeft/1000/60) % 60 );
const seconds = Math.floor( (timeLeft/1000) % 60 );
// display the result in the element with id="demo"
console.log(days + "d " + hours + "h " + minutes + "m " + seconds + "s ");
// clearing countdown when complete
if (timeLeft < 0) {
clearInterval(x);
console.log('CountDown Finished');
}
}, 2000);
Keluaran
0d 23h 59m 57s 0d 23h 59m 55s 0d 23h 59m 53s 0d 23h 59m 51s ...
Pada program di atas, setInterval()
metode yang digunakan untuk membuat timer.
Itu setInterval()
metode dieksekusi pada interval waktu tertentu (di sini, 2000 milidetik).
Itu new Date()
memberikan tanggal dan waktu saat ini. Sebagai contoh,
let d1 = new Date();
console.log(time); // Fri Aug 28 2020 09:19:40 GMT+0545 (+0545)
Itu getTime()
metode mengembalikan jumlah milidetik dari tengah malam 1 Januari 1970 (EcmaScript zaman) ke tanggal yang ditentukan (di sini, tanggal saat ini).
Kode berikut memberikan waktu hari berikutnya dalam milidetik.
new Date().getTime() + 24 * 60 * 60 * 1000;
Sekarang, kita dapat menghitung waktu yang tersisa menggunakan rumus berikut:
let timeLeft = countDownDate - now;
Jumlah hari yang tersisa dihitung dengan menggunakan:
- Selang waktu dibagi dengan 1000 untuk menentukan jumlah detik, yaitu
timeLeft / 1000
- Interval waktu kemudian dibagi dengan 60*60*24 untuk menentukan jumlah hari yang tersisa.
- Itu
Math.floor()
fungsi yang digunakan untuk membulatkan bilangan menjadi bilangan bulat.
Metode serupa digunakan untuk jam, menit, dan detik.
Catatan: Anda juga dapat menggunakan waktu hitung mundur mulai khusus dengan melewatkan tanggal tertentu.
Sebagai contoh,
let countDownDate = new Date("Aug 5, 2025 14:22:36").getTime();