JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptのNumber.toFixed()メソッドの使い方を解説

JavaScriptのNumberオブジェクトが持つtoFixed()メソッドは、小数点以下の表示桁数を表す数値を引数として受け取り、その指定に従って現在の数値を固定小数点表記の文字列へと変換します。金額や計算結果などの小数の桁数を揃えて表示したい場面でよく使われる、実用的なメソッドです。

構文

toFixed()メソッドの基本構文は次のとおりです。

num.toFixed(num);

引数には0~100までの整数を指定できます。引数を省略した場合は「0」が指定されたものとして扱われ、小数点以下は表示されません。また、戻り値は数値ではなく文字列である点に注意してください。

使用例:基本的な使い方

<html>
<head>
  <title>JavaScript Example</title>
</head>
<body>
  <script type="text/javascript">
    var num = Math.PI;
    result = num.toFixed(4);
    document.write("指定した数値の固定小数点表記:" + result);
  </script>
</body>
</html>

実行結果

指定した数値の固定小数点表記:3.1416

この例では、円周率(Math.PI = 3.14159265…)に対してtoFixed(4)を実行しています。小数第5位が四捨五入されるため、「3.1416」という結果が得られます。

使用例:指数表記の数値に適用する

<html>
<head>
  <title>JavaScript Example</title>
</head>
<body>
  <script type="text/javascript">
    var num = Math.PI;
    document.write("指定した数値の固定小数点表記:" + num.toFixed(4));
    document.write("<br>");
    var num = 2.13e+15;
    document.write("指定した数値の固定小数点表記:" + num.toFixed(4));
  </script>
</body>
</html>

実行結果

指定した数値の固定小数点表記:3.1416
指定した数値の固定小数点表記:2130000000000000.0000

指数表記で表される大きな数値に対してtoFixed()を使用すると、完全な固定小数点表記へと展開されます。上の例では「2.13e+15」が「2130000000000000.0000」として出力されていることが分かります。

toFixed()を使う際の注意点

  • 戻り値は文字列:toFixed()が返すのは文字列のため、そのまま数値計算に使うことはできません。再計算が必要な場合はNumber()やparseFloat()などで数値へ変換しましょう。
  • 丸め誤差に注意:内部的には浮動小数点演算が使われるため、四捨五入の結果が直感と異なるケースがあります。金額計算など厳密さが求められる処理では特に注意が必要です。
  • 引数の範囲:引数に0~100以外の値を指定するとRangeErrorが発生します。
  • 負の数にも対応:負の数値に対しても同様に動作し、小数部分が指定した桁数で丸められます。
  1. JavaScriptのNumber()関数とは?使い方とサンプルコードを解説

    JavaScriptのNumber()関数は、引数として渡された値やオブジェクトを、それに対応する数値へ変換するための関数です。真偽値や文字列型の数字、さらにはDateオブジェクトなども数値に変換できるため、データ型の変換処理において非常に便利な組み込み関数の一つです。例えば、Number(true)は「1」、Number(false)は「0」を返します。また、数字のみで構成された文字列「149」を渡せば数値の149に変換され、new Date()で生成した日付オブジェクトを渡すと、1970年1月1日からの経過ミリ秒数が返されます。以下に、Number()関数の動作を確認できるサンプルコードを

  2. JavaScriptのNumber.toLocaleString()関数とは?使い方と実行例を解説

    NumberオブジェクトのtoLocaleString()メソッドは、数値を受け取り、指定されたロケール(地域・言語設定)に応じた形式の文字列表現を返す関数です。国や地域ごとに異なる数字の表記(アラビア数字、桁区切りなど)に変換したい場合に便利です。 構文 toLocaleString()メソッドの基本的な構文は以下のとおりです。 num.toLocaleString(locales); 引数にはBCP 47言語タグ(例:ja-JP、en-US、ar-EGなど)を文字列で指定します。引数を省略した場合は、実行環境のデフォルトロケールが使用されます。 使用例 次のサンプルコードでは、数値「332