Javascript Node.JS-将UNIX时间戳转换为时区偏移
我有一个函数,可以将时间戳转换为时间:Javascript Node.JS-将UNIX时间戳转换为时区偏移,javascript,node.js,date,time,timestamp,Javascript,Node.js,Date,Time,Timestamp,我有一个函数,可以将时间戳转换为时间: function convertUnixTimeToTime(UNIX_timestamp) { var a = new Date(UNIX_timestamp); var fin_hour = String(a.getHours()) if (fin_hour.length == 1) { fin_hour = '0' + fin_hour; } var fin_minutes = String(a
function convertUnixTimeToTime(UNIX_timestamp) {
var a = new Date(UNIX_timestamp);
var fin_hour = String(a.getHours())
if (fin_hour.length == 1) {
fin_hour = '0' + fin_hour;
}
var fin_minutes = String(a.getMinutes())
if (fin_minutes.length == 1) {
fin_minutes = '0' + fin_minutes;
}
var time = fin_hour + ':' + fin_minutes;
return time;
}
我正在本地测试我的应用程序,我的计算机的时间档为+4。
当我尝试从节点应用获取当前时间时:
console.log('Current time is: ' + convertUnixTimeToTime(new Date().getTime()));
我得到我的当前本地时间。正如我所想,Date().getTime()应该以毫秒为单位返回绝对UNIX时间。我的函数convertunixtimetome()没有指定任何时间偏移,这就是为什么我应该在没有任何偏移的情况下获得空闲时间。为什么我要换班+4次?谢谢。因为和根据定义返回本地时间?因为和根据定义返回本地时间?函数
getHours
和getMinutes
总是返回本地时间。new Date(new Date().getTime())
比其他任何东西都更容易混淆-它与new Date()
相同-它不会改变时区的任何内容
要获取所需内容,请使用
getUTCHours
和getUTCMinutes
getHours
和getMinutes
函数始终返回本地时间。new Date(new Date().getTime())
比其他任何东西都更容易混淆-它与new Date()
相同-它不会改变时区的任何内容
要获得您想要的内容,请使用
getUTCHours
和getUTCMinutes
尝试.getUTCHours()
和getUTCMinutes()
而不仅仅是getHours()
和getMinutes()
。JavaScript的工作时间是毫秒,而不是秒。所以应该是:var a=新日期(UNIX\u时间戳*1000)代码>尝试.getUTCHours()
和getUTCMinutes()
而不仅仅是getHours()
和getMinutes()
。JavaScript的工作时间是毫秒,而不是秒。所以应该是:var a=新日期(UNIX\u时间戳*1000)代码>