最推荐使用 Date.now() 获取毫秒级时间戳,它简洁高效、基于 UTC 且无需实例化对象;秒级时间戳需用 Math.floor(Date.now() / 1000) 计算。

在 JavaScript 中,获取当前时间戳最简单直接的方式是使用 Date.now() 方法,它返回自 1970 年 1 月 1 日 00:00:00 UTC 到现在的毫秒数。
用 Date.now() 获取时间戳(推荐)
这是最简洁、高效且无需实例化对象的方法:
const timestamp = Date.now(); console.log(timestamp); // 例如:1717023456789
- 返回值是数字类型,单位为毫秒
- 不依赖本地时区,始终基于 UTC 计算
- 性能优于创建 Date 实例再调用
getTime()
通过 new Date().getTime() 获取
先创建一个 Date 实例,再调用 getTime() 方法:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
const timestamp = new Date().getTime(); console.log(timestamp); // 同样是毫秒时间戳
- 效果与
Date.now()完全一致 - 多了一次对象创建开销,适合已有 Date 实例的场景
- 兼容性极好,所有浏览器都支持
注意:不要用 +new Date() 或 Date.parse(new Date())
虽然以下写法也能得到时间戳,但不推荐:
立即学习“Java免费学习笔记(深入)”;
const ts1 = +new Date(); // 隐式转换,可读性差 const ts2 = Date.parse(new Date()); // Date.parse 本用于解析字符串,对 Date 实例行为未定义,部分环境可能出错
-
+new Date()虽然有效,但语义模糊,易引发误解 -
Date.parse(new Date())不是标准用法,存在兼容风险 - 应优先选择明确、规范的
Date.now()
如果需要秒级时间戳(如某些 API 要求)
只需将毫秒时间戳除以 1000 并取整:
const secondsTimestamp = Math.floor(Date.now() / 1000); console.log(secondsTimestamp); // 例如:1717023456
- 用
Math.floor确保向下取整,避免浮点误差 - 不要用
parseInt或~~,它们在大数值下可能出错 - 注意:秒级时间戳精度较低,仅在必要时使用

















