2017-02-14 138 views
0

以下脚本显示从现在到2017/07/03的相对时间。如何让moment.js以秒为单位显示相对时间?

document.write(moment("20170703 00:00:00", "YYYYMMDD hh:mm:ss").fromNow());
<script src="https://cdn.bootcss.com/moment.js/2.17.1/moment.min.js"></script>

它返回像in 5 months,而我希望像in 123456789 seconds

回答

2

你可以很容易地从现在留在这样的秒:

var seconds = moment("20170703 00:00:00", "YYYYMMDD hh:mm:ss").unix() - moment().unix() 
1

您可以在两个时刻之间获得秒对象使用diff specifing 'seconds'单元作为第二个参数:

var mom = moment("20170703 00:00:00", "YYYYMMDD HH:mm:ss"); 
 
document.writeln(mom.fromNow()); 
 
document.writeln(mom.diff(moment(), 's'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.16.0/moment.min.js"></script>

如果您需要定制瞬间显示相对时间的方式(例如,fromNow()输出)可以使用relativeTimeThresholdrelativeTime。下面一个例子:

var mom = moment("20170703 00:00:00", "YYYYMMDD HH:mm:ss"); 
 
console.log(mom.fromNow()); 
 

 
// Change relativeTimeThreshold 
 
moment.relativeTimeThreshold('s', 60*60*24*30*12); 
 

 
moment.updateLocale('en', { 
 
    relativeTime : { 
 
    s: function (number, withoutSuffix, key, isFuture){ 
 
     return number + ' seconds'; 
 
    }, 
 
    } 
 
}); 
 

 
console.log(mom.fromNow());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.16.0/moment.min.js"></script>

相关问题