Code Snippet
The JavaScript Date object can be used to count down to a specified date and time. For instance, this can be used as a prompt for the user to take action prior to a certain date.
HTML
<!-- timer will appear here -->
<h3>Only <span id="timer" style="color: red;"></span> remaining!</h3>
JavaScript
The following is set way into the future for the sake of creating a long-term example. But in reality, it might be set to expire in a week at midnight.
// set the date to count down to
let countDownDate = new Date('Jan 1, 2035 0:0:0').getTime();
// update the count down every second
let counter = setInterval(function() {
// current date object
let now = new Date().getTime();
// difference between now and count down date
let difference = countDownDate - now;
// calculate days, hours, minutes and seconds
let days = Math.floor(difference / (1000 * 60 * 60 * 24));
let hours = Math.floor((difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
let minutes = Math.floor((difference % (1000 * 60 * 60)) / (1000 * 60));
let seconds = Math.floor((difference % (1000 * 60)) / 1000);
// output time remaining
document.getElementById('timer').innerHTML = days + 'd ' + hours + 'h ' + minutes + 'm ' + seconds + 's';
// display a message when the count down expires
if (difference < 1) {
clearInterval(counter);
document.getElementsByTagName('h3')[0].innerHTML = 'This offer has expired.';
}
}, 1000);
Example:
Only 3d 11h 4m 13s remaining!
Note
This is just an example of what it will look like. When actually coded, it will count down.
JavaScript Notes:
- When using JavaScript, single or double quotation marks are acceptable and work identically to one another; choose whichever you prefer, and stay consistent
- JavaScript is a case-sensitive language; firstName is NOT the same as firstname
- Arrays count starting from zero NOT one; so item 1 is position [0], item 2 is position [1], and item 3 is position [2] … and so on
- JavaScript variables must begin with a letter, $, or _
- JavaScript variables are case sensitive (x is not the same as X)
We’d like to acknowledge that we learned a great deal of our coding from W3Schools and TutorialsPoint, borrowing heavily from their teaching process and excellent code examples. We highly recommend both sites to deepen your experience, and further your coding journey. We’re just hitting the basics here at 1SMARTchicken.