How to get current time with jQuery
Categories:
Mastering Time: How to Get the Current Time with jQuery

Learn various methods to retrieve and format the current date and time using jQuery and native JavaScript, including Unix timestamps and microtime.
While jQuery is a powerful library for DOM manipulation and AJAX, it doesn't provide direct methods for handling dates and times. For these operations, you'll primarily rely on native JavaScript's Date
object. However, jQuery can be used to integrate these values into your web page elements. This article will guide you through obtaining the current time, including various formats like Unix timestamps and microtime, using a combination of JavaScript and jQuery.
Understanding the JavaScript Date Object
The foundation for all time-related operations in the browser is JavaScript's built-in Date
object. When instantiated without any arguments, it automatically creates a new Date
object representing the current date and time according to the client's system clock. From this object, you can extract various components like year, month, day, hour, minute, second, and millisecond.
const now = new Date();
console.log(now); // e.g., Mon Jul 22 2024 10:30:00 GMT-0400 (Eastern Daylight Time)
Creating a new Date object for the current time
flowchart TD A[Start] --> B{new Date()}; B --> C["Current Date & Time Object"]; C --> D["getTime() -> Unix Timestamp (ms)"]; C --> E["getUTCMilliseconds() -> Microtime (ms)"]; C --> F["toLocaleString() -> Formatted String"]; D --> G["Divide by 1000 for seconds"]; E --> H["Combine with seconds for full microtime"]; F --> I["Display on page with jQuery"];
Flowchart of obtaining and using current time with JavaScript Date object
Getting the Current Time and Formatting It
Once you have a Date
object, you can extract specific parts of the time. Common methods include getHours()
, getMinutes()
, getSeconds()
, and getMilliseconds()
. You can then combine these to form a custom time string. For more robust formatting, especially for display, toLocaleTimeString()
or toLocaleString()
are very useful.
const now = new Date();
// Get individual components
const hours = now.getHours();
const minutes = now.getMinutes();
const seconds = now.getSeconds();
// Format with leading zeros
const formattedTime = [
hours.toString().padStart(2, '0'),
minutes.toString().padStart(2, '0'),
seconds.toString().padStart(2, '0')
].join(':');
console.log(`Current time (HH:MM:SS): ${formattedTime}`);
// Using toLocaleTimeString for locale-specific formatting
console.log(`Locale time: ${now.toLocaleTimeString()}`);
// Using toLocaleString for full date and time
console.log(`Locale date and time: ${now.toLocaleString()}`);
// Using jQuery to display on an element
$('#currentTimeDisplay').text(now.toLocaleTimeString());
Extracting and formatting current time components
getHours()
, getMinutes()
, and getSeconds()
return numbers. Use padStart(2, '0')
to ensure single-digit values (e.g., 5) are displayed with a leading zero (e.g., 05) for consistent formatting.Working with Unix Timestamps and Microtime
A Unix timestamp (or Unix epoch time) is a system for describing a point in time, representing the number of seconds that have elapsed since the Unix epoch (January 1, 1970, 00:00:00 UTC). JavaScript's Date.prototype.getTime()
method returns the number of milliseconds since the Unix epoch. To get a Unix timestamp in seconds, you simply divide this value by 1000 and typically round down.
'Microtime' is not a standard term in JavaScript but often refers to a timestamp with millisecond precision. Since getTime()
already provides milliseconds, it effectively gives you a microtime-like value.
const now = new Date();
// Unix timestamp in milliseconds (microtime-like)
const unixTimestampMs = now.getTime();
console.log(`Unix Timestamp (ms): ${unixTimestampMs}`);
// Unix timestamp in seconds
const unixTimestampSeconds = Math.floor(now.getTime() / 1000);
console.log(`Unix Timestamp (seconds): ${unixTimestampSeconds}`);
// Using jQuery to display
$('#unixTimestampMsDisplay').text(unixTimestampMs);
$('#unixTimestampSecondsDisplay').text(unixTimestampSeconds);
Obtaining Unix timestamps in milliseconds and seconds
Date.now()
static method is a more concise way to get the current Unix timestamp in milliseconds, equivalent to (new Date()).getTime()
.const currentTimestampMs = Date.now();
console.log(`Current Timestamp (ms) using Date.now(): ${currentTimestampMs}`);
Using Date.now() for current timestamp in milliseconds