javascript Date.parse和Date.UTC给出不同的结果

Yan*_*ang 4 javascript date

任何人都可以向我解释原因吗?

d = Date.parse('8/15/2012 '+'11:59:45 AM');
alert(d);
alert(Date.UTC(2012, 7, 15, 11, 59, 45));
Run Code Online (Sandbox Code Playgroud)

Cor*_*bin 7

如果未指定,Date.parse会假定本地时间.

然而,UTC一个显然是UTC.

例如,我的计算机是UTC -5(实际上是芝加哥CDT),所以两个时间戳恰好相隔5个小时.

如果指定UTC,您将获得相同的结果:

Date.parse('8/15/2012 '+'11:59:45 AM UTC'); //1345031985000
Date.UTC(2012, 7, 15, 11, 59, 45); //1345031985000
Run Code Online (Sandbox Code Playgroud)