📅  最后修改于: 2023-12-03 15:16:15.283000             🧑  作者: Mango
在 JavaScript 中,我们可以使用内置的 Date
对象来获取时间。大多数情况下,该对象返回的是本地时间。但是,在某些情况下,可能需要获取 UTC 时间,例如与其他系统进行通信。在本文中,我们将介绍如何使用 JavaScript 获取 UTC 时间。
要获取当前 UTC 时间,我们可以使用 Date
对象的 getUTC*
方法。其中 *
表示要获取的时间部分,例如年份、月份、日期、小时、分钟、秒钟等等。下面是一些示例:
const now = new Date();
const yearUtc = now.getUTCFullYear();
const monthUtc = now.getUTCMonth() + 1; // 注意月份要加 1
const dateUtc = now.getUTCDate();
const hourUtc = now.getUTCHours();
const minuteUtc = now.getUTCMinutes();
const secondUtc = now.getUTCSeconds();
console.log(`当前 UTC 时间是 ${yearUtc}-${monthUtc}-${dateUtc} ${hourUtc}:${minuteUtc}:${secondUtc}`);
上面的代码将输出当前 UTC 时间,例如:
当前 UTC 时间是 2022-1-24 4:13:29
注意,获取 UTC 时间和本地时间的方法名略有不同,例如 getUTCFullYear()
和 getFullYear()
。另外,月份要加 1,因为 getUTCMonth()
返回的是 0 到 11 之间的数字。
如果已经有本地时间的字符串或时间戳,我们可以使用 Date
对象的 UTC*
方法来将其转换为 UTC 时间。具体来说,我们可以先创建一个本地时间对象,然后使用 UTC*
方法获取其对应的 UTC 时间部分。下面是一个示例:
const localTimeString = '2022-01-24 12:34:56'; // 假设这是一个本地时间的字符串
const localTime = new Date(localTimeString); // 创建本地时间对象
const yearUtc = localTime.getUTCFullYear();
const monthUtc = localTime.getUTCMonth() + 1; // 注意月份要加 1
const dateUtc = localTime.getUTCDate();
const hourUtc = localTime.getUTCHours();
const minuteUtc = localTime.getUTCMinutes();
const secondUtc = localTime.getUTCSeconds();
console.log(`本地时间 ${localTimeString} 对应的 UTC 时间是 ${yearUtc}-${monthUtc}-${dateUtc} ${hourUtc}:${minuteUtc}:${secondUtc}`);
上面的代码将输出本地时间对应的 UTC 时间,例如:
本地时间 2022-01-24 12:34:56 对应的 UTC 时间是 2022-1-24 4:34:56
注意,使用 Date
对象创建本地时间对象时,要确保字符串格式正确。如果是时间戳,需要先将其转换为本地时间对象,例如:
const localTimestamp = 1643027696000; // 假设这是一个本地时间戳
const localTime = new Date(localTimestamp); // 创建本地时间对象
// ...
在 JavaScript 中,我们可以使用 Date
对象获取 UTC 时间。要获取当前 UTC 时间,可以使用 getUTC*
方法,要将本地时间转换为 UTC 时间,可以先创建本地时间对象,然后使用 UTC*
方法。以上就是本文的全部内容,希望对你有所帮助。