Nodejs os.uptime()以毫秒为单位返回不正确的正常运行时间值

问题描述:

我想将服务器正常运行时间转换为days:hours:minutes:second。我从这个代码中使用:Nodejs os.uptime()以毫秒为单位返回不正确的正常运行时间值

var os = require('os'); 
var uptime = os.uptime(); 
console.log(convertMS(uptime)); 

和使用转换这个时间代码来天:

function convertMS(ms) { 
    var d, h, m, s; 
    s = Math.floor(ms/1000); 
    m = Math.floor(s/60); 
    s = s % 60; 
    h = Math.floor(m/60); 
    m = m % 60; 
    d = Math.floor(h/24); 
    h = h % 24; 
    return { d: d, h: h, m: m, s: s }; 
}; 

uptime变量还给我一些这样16051.8370378。这是不正确的。我该怎么办?

+3

您使用的是什么版本的节点?还要注意'uptime'返回秒,而不是毫秒,所以你的初始划分是不合适的。 – jcaron

+0

我正在使用'v6.9.4' –

从@jcaron

在版本v6.9.4正常运行时间返回seconds Speacial感谢。我犯了一个错误。

v6.9.4 Documentation