valueOfメソッド

広告

valueOfメソッドは対象のDateクラスのオブジェクトをミリ秒形式に変換した値を返します。

Dateクラスのオブジェクトのミリ秒形式に変換した値を返します。

パラメータ:
  無し
戻り値:
  Dateクラスのオブジェクトをミリ秒形式に変換した数値

ObjectクラスのvalueOfメソッドはオブジェクトが表す基本データ型の値を返すメソッドです。DateクラスではObjectクラスからvalueOfメソッドを継承しており、メソッドの結果としてDateクラスのオブジェクトをミリ秒形式に変換した値を返すように再定義しています。

Dateクラスの内部では、日付/時刻の値を1970年1月1日0時0分0秒(UTC)を起点とした経過ミリ秒という数値で管理しており、その値がvalueOfメソッドの結果として返されます。

次の例を見てください。

var d = new Date();
var ms = d.valueOf();

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

1249922682928

これは現在の日時/時刻が1970年1月1日0時0分0秒(UTC)から1,249,922,682,928ミリ秒経過したことを表しています。

サンプルコード

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

<!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/script5_1.js">
</script>

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

document.write("<p>");

var d = new Date();

print(d.toString());
print(d.valueOf() + " ms");

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

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

p5-1

JavaScript入門の他の記事を見てみる

( Written by Tatsuo Ikura )