How to convert date to another timezone in JavaScript ?
In this article, we will learn how to convert the date of one timezone to another. This can be done in two ways:
- Intl.NumberFormat() method
- toLocaleString() method
Method 1: Using Intl.DateTimeFormat() and format(): The Intl.NumberFormat() method is used to represent numbers in language-sensitive formatting. It can be used to represent currency or percentages according to the locale specified. The format() method of this object is used to return a string of the date with the specified locale and formatting options. This will format the date to the timezone required and return a string with the converted date.
Syntax:
intlDateObj = new Intl.DateTimeFormat('en-US', {
timeZone: "America/New_York"
});
usaTime = intlDateObj.format(date);
Example: In this example, we will use Intl.NumberFormat() method
html
<!DOCTYPE html><html lang="en"><head> <title> How to convert date to another timezone in JavaScript ? </title></head><body> <h1 style="color: green"> GeeksForGeeks </h1> <b> How to convert date to another timezone in JavaScript? </b> <br><br> <button onclick="changeTimezone()"> CLick here to change an IST date to US timezone </button> <script type="text/javascript"> function changeTimezone() { let date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); document.write('Given IST datetime: ' + date + "<br>"); let intlDateObj = new Intl.DateTimeFormat('en-US', { timeZone: "America/New_York" }); let usaTime = intlDateObj.format(date); document.write('USA date: ' + usaTime); } </script></body></html> |
Output:

Method 2: Using toLocaleString() method: The toLocaleString() method is used to return a string that formats the date according to the locale and options specified. It will convert the date on which the method is used from one timezone to another.
Syntax:
usaTime = date.toLocaleString("en-US", {timeZone: "America/New_York"});
Example: In this example, we will use Using toLocaleString() method
html
<!DOCTYPE html><html lang="en"><head> <title> How to convert date to another timezone in JavaScript ? </title></head><body> <h1 style="color: green"> GeeksForGeeks </h1> <b> How to convert date to another timezone in JavaScript? </b> <br><br> <button onclick="changeTimezone()"> Change timezone </button> <script type="text/javascript"> function changeTimezone() { let date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0)); document.write('Given IST datetime: ' + date + "<br>"); let usaTime = date.toLocaleString("en-US", { timeZone: "America/New_York" }); document.write('USA datetime: ' + usaTime); } </script></body></html> |
Output:



Please Login to comment...