JavaScript Number メソッド

❮ 前章へ 次章へ ❯

Number メソッドは、数値の操作を手助けします。


Number メソッドとプロパティ

プリミティブ値(3.14 や 2014 など)は、(オブジェクトではないため)プロパティとメソッドを持つことはできません。

しかし、JavaScript では、メソッドやプロパティを実行する際に、プリミティブ値をオブジェクトとして扱うため、 メソッドやプロパティはプリミティブ値でも使用できます。


toString() メソッド

toString() は、数値を文字列として返します。

すべての number メソッドは、あらゆる型の数値(リテラル、変数、または式)に使用できます:

var x = 123;
x.toString();            // returns 123 from variable x
(123).toString();        // returns 123 from literal 123
(100 + 23).toString();   // returns 123 from expression 100 + 23
Try it Yourself »

toExponential() メソッド

toExponential() は、数値を丸め、指数表記で表した文字列を返します。

パラメータは、小数点の後の文字数を定義します:

var x = 9.656;
x.toExponential(2);     // returns 9.66e+0
x.toExponential(4);     // returns 9.6560e+0
x.toExponential(6);     // returns 9.656000e+0
Try it yourself »

パラメータはオプションです。指定しないと JavaScript は数値を丸めません。


toFixed() メソッド

toFixed() は、指定した小数点以下の桁数で文字列を返します。

var x = 9.656;
x.toFixed(0);           // returns 10
x.toFixed(2);           // returns 9.66
x.toFixed(4);           // returns 9.6560
x.toFixed(6);           // returns 9.656000
Try it yourself »

toFixed(2) は、お金を取扱うのに最適です。(訳注:???)


toPrecision() メソッド

toPrecision() は、指定の長さで表した文字列を返します:

var x = 9.656;
x.toPrecision();        // returns 9.656
x.toPrecision(2);       // returns 9.7
x.toPrecision(4);       // returns 9.656
x.toPrecision(6);       // returns 9.65600
Try it Yourself »

valueOf() メソッド

valueOf() は、数値を数値として返します。

var x = 123;
x.valueOf();            // returns 123 from variable x
(123).valueOf();        // returns 123 from literal 123
(100 + 23).valueOf();   // returns 123 from expression 100 + 23
Try it Yourself »

JavaScript では、数値はプリミティブ値(typeof = number)か、オブジェクト(typeof = object)です。

valueOf() メソッドは、Number オブジェクトをプリミティブ値に変換するために JavaScript の内部的で使用されるものです。

コード内で使用する意味はありません。

すべての JavaScript データ型には valueOf() と toString() メソッドがあります。


変数を数値に変換する

変数を数値に変換するために使用できる3つのJavaScriptメソッドがあります:

これらのメソッドは number メソッドではなく、global JavaScript メソッドです。


Global メソッド

JavaScript グローバルメソッドは、すべての JavaScript のデータ型で使用できます。

次は、数値を扱う際には、最も関連性の高いメソッドです:

メソッド 説明
Number() 引数から変換した数値を返します
parseFloat() 引数をパースし、浮動小数点数を返します
parseInt() 引数をパースし、整数を返します

Number() メソッド

Number() は、JavaScript 変数を数値に変換を使用するために使用できます:

x = true;
Number(x);        // returns 1
x = false;     
Number(x);        // returns 0
x = new Date();
Number(x);        // returns 1404568027739
x = "10"
Number(x);        // returns 10
x = "10 20"
Number(x);        // returns NaN
Try it Yourself »

Date() に Number() メソッドを使用すると、1970年1月1日からのミリ秒数が返されます。


parseInt() メソッド

parseInt() は、文字列をパースして整数を返します。空白は無視され、最初の数値だけが返されます:

parseInt("10");         // returns 10
parseInt("10.33");      // returns 10
parseInt("10 20 30");   // returns 10
parseInt("10 years");   // returns 10
parseInt("years 10");   // returns NaN 
Try it yourself »

数値を変換できない場合は、NaN(Not a Number)が返されます。


parseFloat() メソッド

parseFloat() は、文字列をパースして数値を返します。空白は無視され、最初の数値だけが返されます:

parseFloat("10");        // returns 10
parseFloat("10.33");     // returns 10.33
parseFloat("10 20 30");  // returns 10
parseFloat("10 years");  // returns 10
parseFloat("years 10");  // returns NaN
Try it yourself »

数値を変換できない場合は、NaN(Not a Number)が返されます。


Number プロパティ

Property 説明
MAX_VALUE JavaScript で可能な最大の数を返します
MIN_VALUE JavaScriptで可能な最小の数を返します
NEGATIVE_INFINITY 負の無限大を表します(オーバフロー時に返されます)
NaN "Not-a-Number" 値を表します
POSITIVE_INFINITY 無限大を表します(オーバーフロー時に返されます)

var x = Number.MAX_VALUE;
Try it yourself »

Number プロパティは、Number という JavaScript の number オブジェクトラッパーに属します。

このプロパティには、Number.MAX_VALUE としてしかアクセスできません。

myNumber が変数、式、または値の場合に、myNumber.MAX_VALUE を使用すると undefined が返されます:

var x = 6;
var y = x.MAX_VALUE;    // y becomes undefined
Try it yourself »

完全な JavaScript Number リファレンス

完全なリファレンスは、完全な JavaScript Number リファレンスをご覧ください。

リファレンスには、すべてのNumberプロパティとメソッドの説明と例が含まれています。


❮ 前章へ 次章へ ❯