当前位置:首页 > JavaScript

js实现unix

2026-04-05 10:21:07JavaScript

Unix 时间戳简介

Unix 时间戳是指从 1970 年 1 月 1 日 00:00:00 UTC 到当前时间的总秒数(或毫秒数),广泛用于记录和计算时间。

获取当前 Unix 时间戳

JavaScript 中可以通过 Date 对象获取当前时间的 Unix 时间戳(秒级或毫秒级):

js实现unix

// 毫秒级 Unix 时间戳
const timestampMs = Date.now();

// 秒级 Unix 时间戳
const timestampSec = Math.floor(Date.now() / 1000);

将日期转换为 Unix 时间戳

若需将特定日期转换为 Unix 时间戳,可通过 Date.parse()new Date() 实现:

// 方法1:使用 Date.parse()
const dateString = "2023-10-01T12:00:00Z";
const timestampFromString = Date.parse(dateString) / 1000;

// 方法2:使用 new Date()
const date = new Date(2023, 9, 1, 12, 0, 0); // 月份从 0 开始(9 表示 10 月)
const timestampFromDate = Math.floor(date.getTime() / 1000);

将 Unix 时间戳转换为日期

将 Unix 时间戳(秒级或毫秒级)转换为可读日期:

js实现unix

// 秒级时间戳转日期
const timestampSec = 1664611200;
const dateFromSec = new Date(timestampSec * 1000);

// 毫秒级时间戳转日期
const timestampMs = 1664611200000;
const dateFromMs = new Date(timestampMs);

// 输出格式化日期
console.log(dateFromSec.toISOString()); // "2022-10-01T00:00:00.000Z"

处理时区问题

Unix 时间戳基于 UTC,转换为本地时间时需注意时区差异:

const timestamp = 1664611200;
const date = new Date(timestamp * 1000);

// 获取本地时间字符串
console.log(date.toString()); // 显示本地时区时间

// 手动调整时区(示例:转换为 UTC+8)
const utc8Offset = 8 * 60 * 60 * 1000;
const dateUTC8 = new Date(date.getTime() + utc8Offset);
console.log(dateUTC8.toISOString());

实用工具函数

封装常用操作的函数:

// 获取当前秒级时间戳
function getCurrentTimestampSec() {
    return Math.floor(Date.now() / 1000);
}

// 格式化 Unix 时间戳为本地字符串
function formatTimestamp(timestampSec, timezoneOffset = 0) {
    const date = new Date((timestampSec + timezoneOffset * 3600) * 1000);
    return date.toLocaleString();
}

注意事项

  • JavaScript 的 Date 对象处理毫秒级时间戳,Unix 时间戳通常为秒级,需注意单位转换。
  • 日期字符串的解析可能因浏览器而异,建议使用 YYYY-MM-DDTHH:mm:ssZ 格式。

标签: jsunix
分享给朋友:

相关文章

js实现轮播

js实现轮播

实现轮播图的基本思路 轮播图的核心逻辑是通过定时切换展示的图片或内容,通常结合左右滑动按钮和指示器(小圆点)增强交互性。以下是基于原生JavaScript的实现方法。 HTML结构 构建轮播图的HT…

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现选项卡

js实现选项卡

实现选项卡的基本思路 选项卡通常由一组标签和对应的内容面板组成。点击标签时,显示对应的内容面板,隐藏其他面板。实现这一效果需要结合HTML结构、CSS样式和JavaScript交互逻辑。 HTML结…

js实现复制功能

js实现复制功能

使用 document.execCommand 方法 这种方法适用于较旧的浏览器,但在现代浏览器中可能被逐步淘汰。通过创建一个临时的 textarea 元素,将文本内容放入其中,然后执行复制命令。…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…