A timestamp is a sequence of characters or encoded information that represents a specific moment in time. In JavaScript, timestamps are often used in web applications to track events, measure performance, or synchronize data across different devices. JavaScript provides several methods to generate timestamps, each with its own advantages and limitations.
One commonly used method is the Date object, which represents a specific moment in time and can be manipulated using a variety of methods. The Date object provides several ways to generate timestamps, including the getTime()
method, which returns the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC, and the toISOString()
method, which returns a string representing the date and time in ISO format.
Another method for generating timestamps in JavaScript is the Performance API, which provides high-resolution timing information for web applications. The Performance API includes several methods for generating timestamps, including the now()
method, which returns the number of milliseconds that have elapsed since the start of the current page load.
In addition to these methods, JavaScript provides several other ways to generate timestamps, including the Math object, which can be used to manipulate dates and times, and third-party libraries such as Moment.js and Day.js.
Different methods to generate timestamp in JavaScript
Here are some different methods in JavaScript to generate a timestamp:
Date.now()
method: This method returns the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC.- new
Date().getTime()
method: This method returns the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. - new
Date().valueOf()
method: This method returns the primitive value of a Date object as the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. Performance.now()
method: This method returns the number of milliseconds that have elapsed since the start of the current page load.Math.floor(Date.now() / 1000)
method: This method returns the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.- new
Date().toISOString()
method: This method returns a string representing the date and time in ISO format (e.g. "2022-04-04T03:21:44.123Z"). - new
Date().toJSON()
method: This method returns a string representing the date and time in JSON format (e.g. "2022-04-04T03:21:44.123Z").
You should also read How to compare dates in JavaScript?  and How to get current date in JavaScript?
1. Using new Date().getTime()
method
The Date
object in JavaScript is a built-in object that provides methods for working with dates and times. To generate a timestamp using the Date
object, you can call the getTime()
method, which returns the number of milliseconds since January 1, 1970, at midnight UTC.
Here's an example on how to generate timestamp from the current date value
const timestamp = new Date().getTime();
console.log(timestamp);
Output
1679923704130
In this example, we create a new Date object and immediately call the getTime() method to get the current timestamp in milliseconds.
2. Using the Date.now()
method
Another way to generate a timestamp in JavaScript is to use the Date.now()
method, which is a static method of the Date
object. This method returns the number of milliseconds since January 1, 1970, at midnight UTC, just like the getTime()
method. Here is how we can do such.
const timestamp = Date.now();
console.log(timestamp);
Output
1679923702060
In this example, we simply call the Date.now()
method to get the current timestamp in milliseconds.
3. Using the performance.now()
method
The performance.now()
method is a relatively new addition to the JavaScript language, and it provides a high-resolution timestamp with microsecond precision. This method is part of the Performance
interface, which is available in modern web browsers and Node.js.
Here is how to generate timestamp in JavaScript using the performance.now()
method
const timestamp = performance.now();
console.log(timestamp);
Output
66.64300000667572
In this example, we call the performance.now()
method to get the current timestamp in milliseconds with microsecond precision. It is often used within the Window contexts and especially with animation-related work
4. Using new Date().valueOf()
method
This method returns the primitive value of a Date object as the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC. Here's an example:
const timestamp = new Date().valueOf();
console.log(timestamp); // Output: 1649248200000
In this example, we create a new Date object and call the valueOf()
method to obtain a timestamp representing the current time in milliseconds. The timestamp is then logged to the console.
5. Using Math.floor(Date.now() / 1000)
method
This method returns the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC. Here's an example:
const timestamp = Math.floor(Date.now() / 1000);
console.log(timestamp); // Output: 1649248200
In this example, we use the Date.now()
method to obtain the current time in milliseconds, then divide it by 1000 and round down using the Math.floor()
method to obtain the timestamp in seconds.
6. Using new Date().toISOString()
method
This method returns a string representing the date and time in ISO format (e.g. "2022-04-04T03:21:44.123Z"). Here's an example:
const timestamp = new Date().toISOString();
console.log(timestamp); // Output: "2022-04-04T03:21:44.123Z"
In this example, we create a new Date object and call the toISOString()
method to obtain a timestamp in ISO format.
7. Using new Date().toJSON()
method
This method returns a string representing the date and time in JSON format (e.g. "2022-04-04T03:21:44.123Z"). Here's an example:
const timestamp = new Date().toJSON();
console.log(timestamp); // Output: "2022-04-04T03:21:44.123Z"
In this example, we create a new Date object and call the toJSON()
method to obtain a timestamp in JSON format.
Summary
Generating timestamps is a common task in web development, and JavaScript provides several methods to accomplish this. The most commonly used methods include the Date object, which provides several methods to generate timestamps, and the Performance API, which provides high-resolution timing information for web applications. Other methods include the Math object, which can be used to manipulate dates and times, and third-party libraries like Moment.js and Day.js.
Some of the methods to generate timestamps in JavaScript include new Date().valueOf()
, which returns the primitive value of a Date object as the number of milliseconds that have elapsed since January 1, 1970, 00:00:00 UTC, and Math.floor(Date.now() / 1000)
, which returns the number of seconds that have elapsed since January 1, 1970, 00:00:00 UTC.
Two other methods to generate timestamps in JavaScript include new Date().toISOString()
, which returns a string representing the date and time in ISO format, and new Date().toJSON()
, which returns a string representing the date and time in JSON format.
References
Date - JavaScript | MDN (mozilla.org)
performance.now() - Web APIs | MDN (mozilla.org)