Получение разницы в секундах от двух дат в JavaScript - PullRequest
1 голос
/ 03 апреля 2012

У меня есть даты, хранящиеся в MongoDB с использованием Date (), MongoDB использует UTC, это тип даты, и так как строка выглядит как Mon, 02 Apr 2012 20:16:31 GMT.

Я хочу получить разницу во времени, в общем количестве секунд,между этим временем и текущим временем (в UTC).

Я пробовал это:

now = new Date();
current_date = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds());
end_date = obj.end_date (Mon, 02 Apr 2012 20:16:35 GMT);
d = new Date(end_date - current_date);
console.log(d.getSeconds());

Это показывает 22 в течение нескольких секунд, что, очевидно, не так.

Это кажется слишком сложным.Может быть, есть лучший способ в MongoDB или правильный путь в JavaScript, чтобы сделать это?

Любые предложения будут великолепны - спасибо!

Ответы [ 2 ]

5 голосов
/ 03 апреля 2012

Вы можете использовать getTime () для объектов Date, чтобы получить разницу в миллисекундах, а затем разделить разницу на 1000;

, например

now = new Date();
current_date = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds());
end_date = obj.end_date (Mon, 02 Apr 2012 20:16:35 GMT);
var millisDiff = end_date.getTime() -  current_date.getTime();
console.log(millisDiff / 1000);
0 голосов
/ 03 апреля 2012

(end_date.getTime() - current_date.getTime()) / 1000

getSeconds вернет только секунды, но не минуты, часы и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...