JavaScript不会解析GMT日期/时间格式

jak*_*ine 2 javascript datetime date

我正在尝试让JavaScript为我解析日期和时间格式,最终的目的是告诉我自那个日期以来的日子和现在(本地)的时间.

不幸的是,我必须使用的日期格式(它来自我无法控制的JSON响应)以2008-10-01 06:21:43类型格式返回它.

var thedate = "2008-10-01 06:21:43";
var inmillisecs = new Date(thedate);
Run Code Online (Sandbox Code Playgroud)

这只是从JavaScript返回一个错误,告诉我日期无效.

我该如何解决这个问题?

Pet*_*ley 8

这应该做到这一点

function dateFromUTC( dateAsString, ymdDelimiter )
{
  var pattern = new RegExp( "(\\d{4})" + ymdDelimiter + "(\\d{2})" + ymdDelimiter + "(\\d{2}) (\\d{2}):(\\d{2}):(\\d{2})" );
  var parts = dateAsString.match( pattern );

  return new Date( Date.UTC(
      parseInt( parts[1] )
    , parseInt( parts[2], 10 ) - 1
    , parseInt( parts[3], 10 )
    , parseInt( parts[4], 10 )
    , parseInt( parts[5], 10 )
    , parseInt( parts[6], 10 )
    , 0
  ));
}

alert( dateFromUTC( "2008-10-01 06:21:43", '-' ) );
Run Code Online (Sandbox Code Playgroud)