Javascript将当前时间转换为时间间隔

Javascript将当前时间转换为时间间隔,javascript,Javascript,我一直在尝试将当前时间转换为facebook和twitter的时间(2分钟前,30秒前)。为此,我采用当前时间,并借助函数将其转换为近似时间。代码如下: var current=新日期(); 日志(时差(当前、新日期(2018、03、27、10、30、00、00)); 日志(时差(当前、新日期(2018、03、27、10、00、00、00)); 功能时差(当前、以前){ var msPerMinute=60*1000; var msPerHour=msPerMinute*60; var msP

我一直在尝试将当前时间转换为facebook和twitter的时间(2分钟前,30秒前)。为此,我采用当前时间,并借助函数将其转换为近似时间。代码如下:

var current=新日期();
日志(时差(当前、新日期(2018、03、27、10、30、00、00));
日志(时差(当前、新日期(2018、03、27、10、00、00、00));
功能时差(当前、以前){
var msPerMinute=60*1000;
var msPerHour=msPerMinute*60;
var msPerDay=msPerHour*24;
var msPerMonth=msPerDay*30;
var msPerYear=msPerDay*365;
var经过=当前-上一个;
如果(已用时间
您的月份按1(以0为基础)取消。(当然,基于时区,仍可能返回错误结果。)

var current=新日期();
日志(时差(当前、新日期(2018、02、27、10、30、00、00));
日志(时差(当前、新日期(2018、02、27、10、00、00、00));
功能时差(当前、以前){
var msPerMinute=60*1000;
var msPerHour=msPerMinute*60;
var msPerDay=msPerHour*24;
var msPerMonth=msPerDay*30;
var msPerYear=msPerDay*365;
var经过=当前-上一个;
如果(已用时间}
问题出在您的测试中,因为月份从0开始。改变

console.log(timeDifference(current, new Date(2018, 03, 27, 10, 30, 00, 00)));
console.log(timeDifference(current, new Date(2018, 03, 27, 10, 00, 00, 00)));


您的代码工作正常。

说明您的预期和发生的情况。@H.B.它在
-2667427秒前向我发出警报
相反,它应该在小时前给我时间。月份从0开始。查看“相对时间”,很高兴它有所帮助:)
console.log(timeDifference(current, new Date(2018, 02, 27, 10, 30, 00, 00)));
console.log(timeDifference(current, new Date(2018, 02, 27, 10, 00, 00, 00)));