📅  最后修改于: 2023-12-03 14:53:46.327000             🧑  作者: Mango
在开发Web应用程序时,需要将UTC时间转换为特定时区的本地时间。这个过程可以在浏览器端使用JavaScript很容易地完成。
我们可以使用JavaScript的 Date
对象来获取当前的UTC时间。
const utcDate = new Date();
JavaScript没有内置的时区功能,但我们可以使用第三方库Moment.js来处理时区。
首先需要在html文件中加载Moment.js依赖库。
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
我们可以使用moment.js的 tz()
方法,将UTC时间转换为特定时区的时间。
const utcDate = new Date();
const timeZone = 'America/New_York';
const localDate = moment.utc(utcDate).tz(timeZone);
这样我们就得到了以 timeZone
时区为基准的本地时间。
<!DOCTYPE html>
<html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
</head>
<body>
<script>
const utcDate = new Date();
const timeZone = 'America/New_York';
const localDate = moment.utc(utcDate).tz(timeZone);
console.log(localDate.format());
</script>
</body>
</html>
以上代码将输出当前时间的本地表示。
2019-09-26T14:22:31-04:00
我们可以更改 timeZone
的值以获得不同的时间戳。
JavaScript的 Date
对象提供了获取UTC时间的功能,Moment.js库提供了转换时区的功能,我们可以很容易地将UTC时间转换为本地时间。