数値の有効桁数を指定して文字列に変換する(toPrecision)

広告

Number オブジェクトのインスタンスメソッドである toPrecision は、数値の有効桁数を指定した上で文字列に変換した値を取得することができます。ここでは Number オブジェクトの toPrecision メソッドの使い方について解説します。

有効の桁数を指定したあとで文字列に変換する(toPrecision)

Number オブジェクトの toPrecision メソッドは、対象の数値の有効桁数を指定し、そのあとで数値を文字列に変換した値を返します。書式は次のとおりです。

数値.toPrecision([有効桁数])

数値の有効桁数を引数に指定した値に変更し、そのあとで文字列に変換した値を返します。引数を省略した場合は、数値の有効桁数を変更せずに文字列に変換した値を返します。

引数で指定した有効桁数で表示しきれない部分はより近い値へ丸められます。(四捨五入に似ていますが正確には異なります)。また数値を表すのに必要な桁数よりも引数で指定した桁数が多い場合は 0 で埋められます。

次のサンプルをみてください。

let num = 34.5642;

console.log(num.toPrecision());
--> 34.5642

console.log(num.toPrecision(3));
--> 34.6

console.log(num.toPrecision(5));
--> 34.564

console.log(num.toPrecision(8));
--> 34.564200

有効の桁数を指定したあとで文字列に変換する(toPrecision)(1)

場合によっては有効桁数を設定したことによって指数形式に変換されたあとで文字列として返される場合があります。

let num = 5678.9

console.log(num.toPrecision());
--> 5678.9

console.log(num.toPrecision(2));
--> 5.7e+3

console.log(num.toPrecision(3));
--> 5.68e+3

console.log(num.toPrecision(4));
--> 5679

console.log(num.toPrecision(6));
--> 5678.90

有効の桁数を指定したあとで文字列に変換する(toPrecision)(2)

なお整数のように小数点が含まれない数値に対して直接 toPrecision メソッドを実行する場合は、数値を括弧で囲うか数値のあとに空白を追加してください。

console.log(48.toPrecision(3));
--> Uncaught SyntaxError: Invalid or unexpected token

console.log((48).toPrecision(2)); // 数値を括弧で囲う
--> 48

console.log(48 .toPrecision(2)); // 数値のあとに空白を入れる
--> 48

有効の桁数を指定したあとで文字列に変換する(toPrecision)(3)

-- --

Number オブジェクトの toPrecision メソッドの使い方について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。