JavaScript

レシピ

数値

数値を指定した桁数の文字列に変換する

数値を指定した桁数に整えた文字列に変換する方法について解説します。

この記事のポイント

  • toPrecisionメソッドは指定した桁数になるよう表記を自動的に調整して、数値(Number)から文字列(String)に変換する
  • 桁数が足りないときは小数点以下に「0」を追加して埋める

指定した桁数の数値にする

数値の桁数を指定した表記にするときはtoPrecisionメソッドを使います。
このメソッドにパラメータとして桁数を数値で渡すと、その桁数の表記に変換された値を取得することができます。
また、戻り値は数値(Number)から文字列(String)に変換されます。

以下の例では変数number1に入っている数値「1」に対して、toPrecisionメソッドで指定した桁数の数値に変更します。

コード例

var number1 = 1;

console.log(number1.toPrecision()); // '1'
console.log(number1.toPrecision(1)); // '1'
console.log(number1.toPrecision(2)); // '1.0'
console.log(number1.toPrecision(5)); // '1.0000'

出力した値を確認すると、toPrecisionメソッドで指定した桁数になるように数値が変換されていることが分かります。
桁数が足りないときは小数点以下に「0」を追加して整える形になります。

また、toPrecisionメソッドに桁数をパラメータで指定しない場合は渡した値をそのまま文字列に変換します。

toPrecisionメソッド0以外の数値を起点にした変換を行います。
以下の例は変数number1number5に入っている数値に対してtoPrecisionメソッドを実行します。

コード例

var number1 = 1;
var number2 = 1.1;
var number3 = 0;
var number4 = 0.00123456;
var number5 = 1000.0005;
var number6 = -3.2123456;
var number7 = -100.2;

// そのまま出力
console.log(number1.toPrecision()); // '1'
console.log(number2.toPrecision()); // '1.1'
console.log(number3.toPrecision()); // '0'
console.log(number4.toPrecision()); // '0.00123456'
console.log(number5.toPrecision()); // '1000.0005'
console.log(number6.toPrecision()); // '-3.2123456'
console.log(number7.toPrecision()); // '-100.2'

// 2桁に変換
console.log(number1.toPrecision(2)); // '1.0'
console.log(number2.toPrecision(2)); // '1.1'
console.log(number3.toPrecision(2)); // '0.0'
console.log(number4.toPrecision(2)); // '0.0012'
console.log(number5.toPrecision(2)); // '1.0e+3'
console.log(number6.toPrecision(2)); // '-3.2'
console.log(number7.toPrecision(2)); // '-1.0e+2'

// 5桁に変換
console.log(number1.toPrecision(5)); // '1.0000'
console.log(number2.toPrecision(5)); // '1.1000'
console.log(number3.toPrecision(5)); // '0.0000'
console.log(number4.toPrecision(5)); // '0.0012346'
console.log(number5.toPrecision(5)); // '1000.0'
console.log(number6.toPrecision(5)); // '-3.2123'
console.log(number7.toPrecision(5)); // '-100.20'

2桁に変換した結果を確認していくと、変数number4の値は0以外の数値「0.01」が登場する桁から数えて2つの場所「0.0012」で四捨五入した値になっています。

変数number5の値「1000.0005」は表記を2桁にするために「e+3」(10の3乗)に変換して、小数点以下は四捨五入します。
このように、指定した桁数の表記になるように自動的に調整した値を取得することができます。

負の値についても同様に指定した桁数の表記に調整した値を取得することができます。
なお、桁数に「」は含みません。

こちらの記事は役に立ちましたか?

ありがとうございます。
もしよろしければ、あわせてフィードバックや要望などをご入力ください。

コメントありがとうございます!
運営の参考にさせていただきます。