Javascript 在JS中,时间流逝了几秒

Javascript 在JS中,时间流逝了几秒,javascript,time,Javascript,Time,我正在尝试使用jQuery和jQuery将总秒数转换为所用时间 我有一个例子:{“expires”:“254254”}来自外部源的响应,我想将其转换为2days Xhours Xminutes left,我尝试过使用类似的方法: function timeDifference(elapsed) { var msPerMinute = 60 * 1000; var msPerHour = msPerMinute * 60; var msPerDay = ms

我正在尝试使用jQuery和jQuery将总秒数转换为所用时间

我有一个例子:
{“expires”:“254254”}
来自外部源的响应,我想将其转换为
2days Xhours Xminutes left
,我尝试过使用类似的方法:

function timeDifference(elapsed) {
    var msPerMinute = 60 * 1000;
        var msPerHour = msPerMinute * 60;
        var msPerDay = msPerHour * 24;
        var msPerMonth = msPerDay * 30;
        var msPerYear = msPerDay * 365;
    if (elapsed < msPerMinute) {
            return Math.round(elapsed/1000) + ' seconds ago';   
        } else if (elapsed < msPerHour) {
            return Math.round(elapsed/msPerMinute) + ' minutes ago';   
        } else if (elapsed < msPerDay ) {
            return Math.round(elapsed/msPerHour ) + ' hours ago';   
        } else if (elapsed < msPerMonth) {
            return 'approximately ' + Math.round(elapsed/msPerDay) + ' days ago';   
        } else if (elapsed < msPerYear) {
            return 'approximately ' + Math.round(elapsed/msPerMonth) + ' months ago';   
        } else {
            return 'approximately ' + Math.round(elapsed/msPerYear ) + ' years ago';   
        }
} 
功能时差(已用){
var msPerMinute=60*1000;
var msPerHour=msPerMinute*60;
var msPerDay=msPerHour*24;
var msPerMonth=msPerDay*30;
var msPerYear=msPerDay*365;
如果(已用时间
--更新

     function DDHHMMSS(seconds){
            var t = seconds
            var cd = 24 * 60 * 60 * 1000,
                ch = 60 * 60 * 1000,
                cs =    60 * 1000,
                d = Math.floor(t / cd),
                h = Math.floor( (t - d * cd) / ch),
                m = Math.round( (t - d * cd - h * ch) / 60000),
                s  =   Math.round( (t - d * cd - h * ch ) / 360000),
                pad = function(n){ return n < 10 ? '0' + n : n; };
            if( m === 60 ){
                h++;
                m = 0;
            }
            if( h === 24 ){
                d++;
                h = 0;
            }

            var days =  d.toString() + "days";
var hour =  pad(h).toString() + "Hours";
var minutes = pad(m).toString() + "Minutes";
var Seconds =  pad(s).toString() + "Seconds";

            return [days , hour , minutes ,Seconds].join(':');
        }
--更新


现在date.js已经过时,无法维护,所以请使用“矩.js”

如果您能够使用第三方插件,请尝试:

有关如何在未来日期使用此选项的更多信息,请参阅问题:


它在几天内不返回?当使用您的第一个功能HHH时,只需检查我的DDHHMMSS功能。我无法以用户友好的格式显示此功能吗?您对用户友好格式的定义是什么?。。。返回[d,pad(h),pad(m),pad(s)]。加入(“:”)修改此选项,如添加数据、小时和所有检查更新:您将获得2天:X小时:X分钟:X秒您还需要描述您获得的输出,以及为什么它与您期望的不匹配。首先,它永远不会准确地说出您的要求,因为字符串“left”甚至不在函数中。请准确点。
(new Date).clearTime()
          .addSeconds(15457)
          .toString('H:mm:ss');