我正在寻找一种方法,仅使用以秒为单位的js时刻来查找两个日期之间的时差。 我想将当前日期与我从数据库中读取的日期进行比较。
例如:
//current time
var current_time= moment().format('YYYY-MM-DD HH:mm:ss');
//date from sql query
var starting_date=moment(element.start_date).format('YYYY-MM-DD HH:mm:ss');
// print the dates as they are now
console.log(current_time);
console.log(starting_date);
结果:
2019-07-02 18:00:11
2019-05-03 15:59:29
我只想找到这两个日期之间的差异(以秒为单位)。
我尝试使用类似于我发现的以下示例的方法使其工作:
var a = moment([2007, 0, 29]);
var b = moment([2007, 0, 28]);
a.diff(b, 'days')
但这没用...
var current_time= moment().format('YYYY-MM-DD HH:mm:ss');
var starting_date=moment(element.start_date).format('YYYY-MM-DD HH:mm:ss');
current_time.diff(starting_date, 'seconds');
崩溃
有什么想法要实现吗?
答案 0 :(得分:0)
您可以使用a.unix() - b.unix()
a.diff(b)
将在millisecond
中返回diff,您可以将div划分为1000以获得秒。
var a = moment('2019-07-02 18:00:11', 'YYYY-MM-DD HH:mm:ss');
var b = moment('2019-05-03 15:59:29', 'YYYY-MM-DD HH:mm:ss');
second = a.unix() - b.unix();
console.log('diff with second:' + second);
secondbymin = a.diff(b);
console.log('diff with milisecond: ' + secondbymin);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.js"></script>