使用 Moment.js 查找三个值之间的差异

Finding Difference Between Three Values Using Moment.js

我正在使用各种 moment.js 方法来查找最初表示为日期的值之间的毫秒差异。这就是我正在做的事情:

const stopTimeLong = '2021-05-19 09:54:08';
const startTimeLong = '2021-05-19 09:54:04';
const currentTimeLong = '2021-05-19 09:54:10'; 

// Get values in milliseconds
const stopTime = moment(stopTimeLong).valueOf();
const startTime = moment(startTimeLong).valueOf();
const currentTime = moment(currentTimeLong).valueOf();

const duration = moment.duration(stopTime - startTime).asSeconds(); // is 4
const final = moment.duration(currentTime - (stopTime - startTime)).asSeconds();

现在,duration 的值给出了我根据初始时间所期望的值:4

但是 final 的值是 1621432450,我希望 6

这里有什么问题?我需要更改什么才能获得 6 作为基于初始日期的最终结果?

最后一行应该是:

const final = moment.duration(currentTime - startTime).asSeconds();

停止时间无关紧要,以你给的数据和你要求的结果为准。