0

マップ内の各車にこのタイムスタンプ形式があります。

2012-12-11T03:51:43+03:00

現在の時刻に応じて時間数を抽出したい。

この文字列を解析して現在の時刻と比較する方法がわかりません。

何か案が ?

4

2 に答える 2

2

何かのようなもの:

var
  d1 = new Date('2012-12-11T03:51:43+03:00'),
  d2 = new Date;

console.log(
  (d2 - d1) / 3600000
);
于 2012-12-11T09:03:19.310 に答える
0

まず、Chrome 以外のブラウザのタイムスタンプを修正する必要があります

Chromeと他のブラウザでのjavascript date.parseの違い

デモ

var noOffset = function(s) {
  var day= s.slice(0,-5).split(/\D/).map(function(itm){
    return parseInt(itm, 10) || 0;
  });
  day[1]-= 1;
  day= new Date(Date.UTC.apply(Date, day));  
  var offsetString = s.slice(-5)
  var offset = parseInt(offsetString,10)/100;
  if (offsetString.slice(0,1)=="+") offset*=-1;
  day.setHours(day.getHours()+offset);
  return day.getTime();
}
alert(parseInt((new Date().getTime()-noOffset(yourTimeStamp))/3600000))
于 2012-12-11T09:07:59.557 に答える