Program JavaScript za ustvarjanje odštevalnika

V tem primeru se boste naučili pisati program JavScript, ki bo ustvaril odštevalnik časa.

Če želite razumeti ta primer, morate poznati naslednje teme programiranja JavaScript:

  • JavaScript za matematiko ()
  • Datum in čas JavaScript
  • Javascript setInterval ()

Primer: Ustvarite odštevalnik časa

 // 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 console.log(days + "d " + hours + "h " + minutes + "m " + seconds + "s "); // clearing countdown when complete if (timeLeft < 0) ( clearInterval(x); console.log('CountDown Finished'); ) ), 2000);

Izhod

 0d 23h 59m 57s 0d 23h 59m 55s 0d 23h 59m 53s 0d 23h 59m 51s… 

V zgornjem programu se setInterval()metoda uporablja za ustvarjanje časovnika.

setInterval()Metoda se izvaja v določenem časovnem intervalu (tu, 2000 milisekund).

new Date()Daje trenutni datum in čas. Na primer

 let d1 = new Date(); console.log(time); // Fri Aug 28 2020 09:19:40 GMT+0545 (+0545)

getTime()Metoda vrne število milisekund od polnoči 1. januarja 1970 (ECMAscript epohe) do določenega datuma (tukaj, trenutni datum).

Naslednja koda prikazuje čas naslednjega dne v milisekundah.

 new Date().getTime() + 24 * 60 * 60 * 1000;

Zdaj lahko izračunamo preostali čas po naslednji formuli:

 let timeLeft = countDownDate - now;

Preostalo število dni se izračuna z uporabo:

  • Časovni interval se deli s 1000, da se določi število sekund, tjtimeLeft / 1000
  • Časovni interval se nato deli s 60 * 60 * 24, da se določi število preostalih dni.
  • Math.floor()Funkcija se uporablja za zaokrožiti število na celo število.

Podobne metode se uporabljajo za ure, minute in sekunde.

Opomba : Uporabite lahko tudi čas odštevanja po meri, tako da navedete določen datum.

Na primer

 let countDownDate = new Date("Aug 5, 2025 14:22:36").getTime();

Zanimive Članki...