JavaScript 时间戳:获取、转换与运算的代码示例
JavaScript 处理 Unix 时间戳的常用写法,涵盖秒级/毫秒级获取、时间戳与日期互转、时间戳加减等场景,附带可直接复制运行的示例。下面按常见场景整理了 JavaScript 的 4 段示例代码,直接复制即可使用。
获取时间戳
获取当前时刻的 Unix 时间戳,区分秒级与毫秒级两种精度。
// 获取当前 Unix 时间戳(秒)
const tsSeconds = Math.floor(Date.now() / 1000);
// 获取当前时间戳(毫秒)
const tsMillis = Date.now();
console.log(tsSeconds, tsMillis); // 获取当前 Unix 时间戳(秒)
const tsSeconds = Math.floor(Date.now() / 1000);
// 获取当前时间戳(毫秒)
const tsMillis = Date.now();
console.log(tsSeconds, tsMillis); 时间戳转日期
将 Unix 时间戳还原为人类可读的日期时间字符串,可自定义格式。
// 时间戳(秒)转日期时间
const ts = 1690000000;
const date = new Date(ts * 1000);
// 本地时间字符串
console.log(date.toLocaleString());
// ISO 8601 (UTC)
console.log(date.toISOString()); // 时间戳(秒)转日期时间
const ts = 1690000000;
const date = new Date(ts * 1000);
// 本地时间字符串
console.log(date.toLocaleString());
// ISO 8601 (UTC)
console.log(date.toISOString()); 日期转时间戳
把指定的日期时间转换为 Unix 时间戳,常用于存储与时间计算。
// 日期时间转时间戳(秒)
const date = new Date('2023-07-22 06:26:40');
const ts = Math.floor(date.getTime() / 1000);
console.log(ts); // 日期时间转时间戳(秒)
const date = new Date('2023-07-22 06:26:40');
const ts = Math.floor(date.getTime() / 1000);
console.log(ts); 时间戳运算
基于时间戳做加减(如加一天),用于到期、倒计时等时间推算。
// 时间戳运算:加 1 天
const ts = 1690000000;
const oneDay = 24 * 60 * 60;
const tomorrow = ts + oneDay;
console.log(tomorrow); // 时间戳运算:加 1 天
const ts = 1690000000;
const oneDay = 24 * 60 * 60;
const tomorrow = ts + oneDay;
console.log(tomorrow);