首页 >web前端 >js教程 >如何在 JavaScript 中将日期转换为不同的时区?

如何在 JavaScript 中将日期转换为不同的时区?

Patricia Arquette
Patricia Arquette原创
2024-12-16 14:59:11635浏览

How Can I Convert a Date to a Different Time Zone in JavaScript?

在 JavaScript 中将日期转换为另一个时区

要在 JavaScript 中将日期从一个时区转换为另一个时区,您可以使用内置函数和时间Zone.tab 文件中描述的区域数据库。这是一个实用的解决方案:

convertTZ 函数有两个参数:

  • 日期:特定时区的原始日期(例如,“2012/04/10 10:10: 30 0000")
  • tzString:所需的时区字符串(例如, "Asia/Jakarta")
function convertTZ(date, tzString) {
    return new Date((typeof date === "string" ? new Date(date) : date).toLocaleString("en-US", {timeZone: tzString}));   
}

用法示例:

// Convert a date to GMT+7 timezone (Asia/Jakarta)
const convertedDate = convertTZ("2012/04/20 10:10:30 +0000", "Asia/Jakarta");
console.log(convertedDate); // Tue Apr 20 2012 17:10:30 GMT+0700 (Western Indonesia Time)

convertedDate 将是一个常规的 Date 对象,允许您访问其组件:

const hours = convertedDate.getHours(); // 17

此外,您可以传递 Date 对象作为第一个参数,而不是传递字符串:

const date = new Date();
const jakartaDate = convertTZ(date, "Asia/Jakarta"); // Current date-time in Jakarta

以上是如何在 JavaScript 中将日期转换为不同的时区?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn