JavaScript-ohjelma lähtölaskennan luomiseen

Sisällysluettelo

Tässä esimerkissä opit kirjoittamaan JavScript-ohjelman, joka luo ajastimen.

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista JavaScript-ohjelmoinnin aiheista:

  • JavaScript Math -kerros ()
  • JavaScript-päivämäärä ja -aika
  • Javascript setInterval ()

Esimerkki: Luo ajastin

 // 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);

Tuotos

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

Edellä olevassa ohjelmassa setInterval()menetelmää käytetään ajastimen luomiseen.

setInterval()Menetelmä suoritetaan tietyllä aikaväli (täällä, 2000 millisekuntia).

new Date()Antaa päivämäärän ja kellonajan. Esimerkiksi,

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

getTime()Menetelmä palauttaa millisekuntien määrän keskiyöstä päivänä tammikuuta 1, 1970 (ECMAScript epookki) mainittua päivämäärää (tässä, nykyinen päivämäärä).

Seuraava koodi antaa seuraavan päivän ajan millisekunteina.

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

Nyt voimme laskea jäljellä olevan ajan seuraavalla kaavalla:

 let timeLeft = countDownDate - now;

Jäljellä oleva päivien lukumäärä lasketaan seuraavasti:

  • Aikaväli jaetaan 1000: lla sekuntien lukumäärän määrittämiseksi, tstimeLeft / 1000
  • Aikaväli jaetaan sitten 60 * 60 * 24: lla jäljellä olevien päivien määrän määrittämiseksi.
  • Math.floor()Toimintoa käytetään pyöristää numero kokonaislukuun.

Samanlaisia ​​menetelmiä käytetään tunteja, minuutteja ja sekunteja.

Huomaa : Voit käyttää myös mukautettua lähtölaskenta-aikaa kulkemalla tietyn päivämäärän.

Esimerkiksi,

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

Mielenkiintoisia artikkeleita...