- Home ›
- JavaScript入門 ›
- Numberクラス ›
- HERE
コンストラクタ関数
Numberクラスのコンストラクタ関数は次の1つが用意されています。
Number(val)
Numberクラスのオブジェクトを生成します。 パラメータ: val 数値または数値以外の値
Numberクラスのオブジェクトを作成するコンストラクタ関数です。引数には数値または数値以外の値を指定して下さい。
var num_obj = new Number(10);
数値以外の値を指定した場合はまず引数の値を数値に変換し、変換された値が引数に指定されたものとしてオブジェクトが作成されます。(値がどのような数値に変換されるのかについては「数値への変換」を参照して下さい)。
var num_obj = new Number("abc");
上記の場合、"abc"はNaNに変換されますので次のように記述した場合と同じです。
var num_obj = new Number(NaN);
Numberクラスのコンストラクタ関数をnew演算子を付けずに関数として呼び出すと、指定した引数を数値に変換した結果を返します。
var num = Number(10);
この場合、Numberクラスのオブジェクトではなく基本データ型の数値が取得されている点に注意して下さい。
Numberコンストラクタ関数では5つのプロパティが定義されています。
Number.NaN 非数 Number.POSITIVE_INFINITY 正の無限大 Number.NEGATIVE_INFINITY 負の無限大 Number.MAX_VALUE 表現可能な最大の値 Number.MIN_VALUE 表現可能な最小の値
これらのプロパティは次のように使用することができます。
var max_num = Number.MAX_VALUE;
では簡単なサンプルで試してみます。
<!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/script1_1.js"> </script> </body> </html>
function print(str){ document.write(str + "<br />"); } var num_obj; document.write("<p>"); num_obj = new Number(10); print(num_obj); num_obj = new Number("abc"); print(num_obj); print("Number.NaN = " + Number.NaN); print("Number.POSITIVE_INFINITY = " + Number.POSITIVE_INFINITY); print("Number.NEGATIVE_INFINITY = " + Number.NEGATIVE_INFINITY); print("Number.MAX_VALUE = " + Number.MAX_VALUE); print("Number.MIN_VALUE = " + Number.MIN_VALUE); document.write("</p>");
上記を実際にブラウザ見てみると次のように表示されます。
( Written by Tatsuo Ikura )