js日期与时间戳转换
时间: 2025-02-20 09:04:16 浏览: 63
### JavaScript 中日期与时间戳相互转换
#### 时间戳转日期
为了将时间戳转换成可读的日期格式,可以创建一个新的 `Date` 对象并传入时间戳作为参数。之后通过调用该对象的相关方法获取具体的年份、月份和日子等信息。
```javascript
function timestampToDate(timestamp) {
const date = new Date(timestamp);
let y = date.getFullYear();
let MM = date.getMonth() + 1;
MM = MM < 10 ? '0' + MM : MM;
let d = date.getDate();
d = d < 10 ? '0' + d : d;
return `${y}-${MM}-${d}`;
}
```
此代码片段展示了如何把给定的时间戳转化为形如 "YYYY-MM-DD" 的字符串表示形式[^3]。
对于更详细的日期格式化(比如包含小时分钟秒),可以根据需要调整上述逻辑以适应具体的应用场景。
#### 日期转时间戳
当涉及到从日期对象获得相应的时间戳时,在JavaScript中有多种方式可供选择:
- **使用 getTime():**
这是最常用的一种途径,它返回自1970年1月1日起至指定日期为止所经过的毫秒数。
```javascript
function dateToTimestamp(dateString) {
var date = new Date(dateString);
return date.getTime();
}
```
- **利用 valueOf():**
此方法同样用于取得当前实例距 epoch (即 Unix 纪元起点) 所经历过的毫秒总数。
```javascript
function dateToTimestamp(dateString) {
var date = new Date(dateString);
return date.valueOf();
}
```
- **采用加号操作符 (+):**
将一个有效的 `Date` 实例放在加法运算符前会自动触发其内部数值化的机制,从而得到对应的时间戳值。
```javascript
function dateToTimestamp(dateString) {
var date = new Date(dateString);
return +date;
}
```
以上三种方案均能有效地完成由日期向时间戳转变的任务,并且它们之间互为替代关系,开发者可根据个人喜好或项目编码风格选取最合适的那一种[^1]。
另外还有一种基于正则表达式的解析办法适用于某些特殊情况下对非标准输入格式的支持;而借助于诸如 `Intl.DateTimeFormat()` 或第三方库(像 moment.js)也可以简化跨平台兼容性和国际化方面的工作量[^2]。
阅读全文
相关推荐
















