誰かが私に理由を説明できますか?
d = Date.parse('8/15/2012 '+'11:59:45 AM');
alert(d);
alert(Date.UTC(2012, 7, 15, 11, 59, 45));
</p>
誰かが私に理由を説明できますか?
d = Date.parse('8/15/2012 '+'11:59:45 AM');
alert(d);
alert(Date.UTC(2012, 7, 15, 11, 59, 45));
</p>
Date.parseは、指定されていない場合、現地時間を想定します。
ただし、UTCは明らかにUTCです。
たとえば、私のコンピューターはUTC -5(実際にはシカゴCDT)なので、2つのタイムスタンプはたまたま5時間離れています。
UTCを指定した場合も、同じ結果が得られます。
Date.parse('8/15/2012 '+'11:59:45 AM UTC'); //1345031985000
Date.UTC(2012, 7, 15, 11, 59, 45); //1345031985000
月の違いはあなたの質問のタイプミスだと思います。
Date.parse は、指定された日付と 1970 年 1 月 1 日の午前 0 時の差を返します。
Date.UTC は、日付と 1970 年 1 月 1 日GMTの午前 0 時との差を返します。
タイムゾーンが GMT (UTC) に設定されている場合、両方の呼び出しで同じ値が返されるはずです。