parseメソッド

広告

parseメソッドは文字列として与えられた値から日付/時刻の値を解析し、取得した日付/時刻の値をミリ秒形式の値に変換した値を返します。このメソッドはDateコンストラクタ関数のプロパティとして定義されています。

文字列に含まれる日付と時刻の値を解析し、その日付と時刻が表す値をミリ秒
形式の値に変換して返します。

パラメータ:
  無し
戻り値:
  作成したミリ秒形式に変換した数値

UTCメソッドはDateクラスのメソッドではありませんので、次のように呼び出します。

Date.parse("...");

どのような形式で日付や時刻が記述されていれば解析可能なのかは決まっておらず利用される環境にもよります。その為、対象の文字列から必ず日付や時刻が読み取れるわけではない点について注意して下さい。

次の例を見てください。

var ms1 = Date.parse("2009/08/11 08:14:45");
var ms2 = Date.parse("2009-08-11 08:14:45");
var ms3 = Date.parse("2009/08/11 08:14:45 GMT+0000");

上記の場合、例えば次のような数値を取得できます。

1249946085000
NaN
1249978485000

2番目の文字列は解析に失敗しました。解析に失敗した場合はNaNが返されます。

サンプルコード

では簡単なサンプルで試してみます。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<title>JavaScript テスト</title>
</head>
<body>

<script type="text/javascript" src="./js/script7_1.js">
</script>

</body>
</html>
function print(str){
  document.write(str + "<br />");
}

document.write("<p>");

var ms1 = Date.parse("2009/08/11 08:14:45");
var ms2 = Date.parse("2009-08-11 08:14:45");
var ms3 = Date.parse("2009/08/11 08:14:45 GMT+0000");

var d1 = new Date(ms1);
var d2 = new Date(ms2);
var d3 = new Date(ms3);

print(d1.toString());
print(d2.toString());
print(d3.toString());

document.write("</p>");

上記を実際にブラウザ見てみると次のように表示されます。

p7-1

( Written by Tatsuo Ikura )