使用javascript在两个不同日期之间获得第二名

时间:2016-08-25 16:15:02

标签: javascript date

我是JS的新手,现在我想尝试两个日期之间的第二个,但我累了:

function status(lastseen){
 //note: both dates are in "2013-07-30 21:20:45" format 
    var d1 = new Date(lastseen);
    var d2 = new Date(); 
    var second = ((d2-d1)/1000).toString();
    //return second; 
    if(second <= 10){ 
        return 'status_on';
    } else { 
        return 'status_off'; 
    }
}

2 个答案:

答案 0 :(得分:1)

我会使用Moment js。

var date1 = "2013-07-30 21:20:45";
var date2 = "2013-07-30 21:21:45";
var duration = moment.duration(moment(date2).diff(moment(date1)));
if (duration < 10) {
  console.log('status_on');
} else {
  console.log('status_off')
}

我创造了一个小提琴。看看吧。

https://jsfiddle.net/Refatrafi/32gyhzrm/

答案 1 :(得分:0)

当你这样做时:

alert(status(lastseen));

它应该返回秒。它将永远不会返回&#34; status_on&#34;或者&#34; status_off&#34;,因为函数在返回后停止执行。删除&#39;返回第二个&#39;返回状态 也可以使用getTime()

seconds=(d1.getTime()-d2.getTime())/1000;