[JavaScript] 小数点以下X桁を指定して四捨五入する方法

このエントリーをはてなブックマークに追加

どうも、fujinyoです。
冬でもパピコ食べてたりします。おいしいです。

さてさて、javascriptで四捨五入をしたくて調べてみると以下の関数が出てきました。

Math.round
小数点以下を四捨五入します。引数に指定される数値、数式によって示された数値を四捨五入して整数値にします。返される値が整数でない場合は、NaN (数値ではない) を返します。

しかし、この関数だと返ってくる値は整数値。

こんな感じになります。

var num = 3.14159;

result = Math.round(num);

alert(result);

結果はこうです。

3

整数値の3が返ってきます。

目的は、小数点以下の桁数を指定して取得したかったのですが引数を指定したりもできないようなので関数を作ってみました。

処理の内容は無題メモランダムさんの記事を参考にしました。

function myRound(val, precision)
{
     //小数点を移動させる為の数を10のべき乗で求める
//例) 小数点以下2桁の場合は 100 をかける必要がある
     digit = Math.pow(10, precision);

     //四捨五入したい数字に digit を掛けて小数点を移動
     val = val * digit;

     //roundを使って四捨五入
     val = Math.round(val);

     //移動させた小数点を digit で割ることでもとに戻す
     val = val / digit;

     return val;
}

では、実際に使ってみます。

var num = 3.14159;

//今回は小数点以下2桁を取得する
result = myRound(num, 2);

alert(result);

結果はこうなります。

3.14

これで、javascriptでも桁数を指定して四捨五入ができそうです。

それでは、また。

[PR] 「結さん」があなたに代わって開発案件の依頼主を探します

  • 「既存のクライアントにギャラアップは言いにくい」
  • 「営業活動する時間がないし、苦手」
  • 「仕事が途切れたらどうしよう」

ITエンジニアのこんな悩みを「結さん」が解決してくれます
結さんへの無料会員登録後は提案メールを待つだけです!

関連記事

このエントリーをはてなブックマークに追加