好吧,我在使用 javascript 从 unix 时间戳转换为人类表示时遇到了一个奇怪的问题
这是时间戳
1301090400
这是我的 javascript
var date = new Date(timestamp * 1000);
var year = date.getFullYear();
var month = date.getMonth();
var day = date.getDay();
var hour = date.getHours();
var minute = date.getMinutes();
var seconds = date.getSeconds();
我预计结果是 2011 2, 25 22 00 00。但它是 2011, 2, 6, 0, 0, 0
我想念什么?
原文由 georgevich 发布,翻译遵循 CC BY-SA 4.0 许可协议
getDay()
返回星期几。要获取日期,请使用date.getDate()
。getMonth()
检索月份,但月份是从零开始的,因此使用getMonth() + 1
应该会给您正确的月份。这里的时间值似乎没问题,尽管这里的时间是 23 (GMT+1)。如果您想要通用值,请将UTC
添加到方法中(例如date.getUTCFullYear()
、date.getUTCHours()
)这是一个检索给定
Date
值的小帮手想法:或者看看这个小的 stackblitz 项目(效率更高一点)。