JScript: Как рассчитать разницу между двумя датами и временем? - PullRequest
1 голос
/ 23 апреля 2010

Как рассчитать разницу во времени в JScript между двумя разами в миллисекундах или секундах?

Например, между 2010-04-23 15:03 и 2010-05-30 00: 41

Ответы [ 3 ]

4 голосов
/ 23 апреля 2010
var d1 = new Date(2010,3,23,15,3);
var d2 = new Date(2010,4,30,0,41);

var delta = Math.abs( d1 - d2 );

Ответ будет в миллисекундах.

4 голосов
/ 23 апреля 2010

Во-первых, вы должны разобрать строки, чтобы получить объекты даты, я обычно использую функцию, подобную следующей, чтобы извлечь части даты, и использовать конструктор Date:

function parseDate(input) {
  var parts = input.match(/(\d+)/g);
  // new Date(year, month [, date [, hours[, minutes[, seconds[, ms]]]]])
  return new Date(parts[0], parts[1]-1, parts[2], // months are 0-based
                  parts[3], parts[4]);
}

var diff = parseDate("2010-05-30 00:41") - parseDate("2010-04-23 15:03");
// 3145080000 milliseconds
0 голосов
/ 23 апреля 2010

Проверьте библиотеку JS DateTime на CodePlex .Он позволяет вам обрабатывать DateTimes так же, как это делает .NET (конечно, с некоторыми ограничениями).

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