【发布时间】:2019-09-22 00:53:11
【问题描述】:
我正在寻找一种方法来查找 2 个日期之间的时间差,仅使用 moment 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');
它崩溃了
知道如何实现吗?
【问题讨论】:
-
.diff()到底是怎么失效的? -
“不起作用” - 你能详细说明一下吗?你得到一个空的控制台日志吗?你得到0的差异吗?什么都没发生吗?
-
您的
diff示例导致1day 这对于该代码是正确的,但是您没有展示如何尝试将其适应您的问题情况,几秒钟内它不起作用。您需要显示您的 minimal reproducible example 尝试使用diff。 -
@Lewis 我试着说例如 current_time.diff(starting_date, 'seconds');结果是错误“current_time.diff 不是函数”
-
这意味着 current_time 不是时刻对象。它是使用上面的代码创建的吗?
标签: javascript momentjs