JavaScript で数値を小数点以下 2 桁に丸める
-
JavaScript で
.toFixed()
メソッドを使用して数値を小数点以下 2 桁に丸める -
JavaScript で
Math.round()
関数を使用して数値を小数点以下 2 桁に丸める - JavaScript で二重丸めを使って数値を小数点以下 2 桁に丸める
- JavaScript でカスタム関数を使用して数値を小数点以下 2 桁に丸める
このチュートリアルでは、JavaScript で数値を小数点以下 2 桁に丸める方法を紹介します。
JavaScript で .toFixed()
メソッドを使用して数値を小数点以下 2 桁に丸める
数値に .toFixed()
メソッドを適用し、引数として小数点以下の桁数を渡します。
var numb = 12312214.124124124;
numb = numb.toFixed(2);
この方法では正確な結果が得られない場合があり、これよりも優れた方法があります。数が 1.2
の場合、1.20
と表示されます。2.005
のような数値を指定すると、2.01
ではなく 2.000
が返されます。
JavaScript で Math.round()
関数を使用して数値を小数点以下 2 桁に丸める
数値を取得し、非常に小さい数値 Number.EPSILON
を追加して、数値が正確に丸められるようにします。次に、四捨五入する前に数値に 100
を掛けて、小数点以下 2 桁のみを抽出します。最後に、数値を 100 で割って、小数点以下 2 桁までを取得します。
var numb = 212421434.533423131231;
var rounded = Math.round((numb + Number.EPSILON) * 100) / 100;
console.log(rounded);
出力:
212421434.53
このメソッドは .toFixed()
よりも改善されていますが、それでも最善の解決策ではなく、1.005
を正しく丸めることもできません。
JavaScript で二重丸めを使って数値を小数点以下 2 桁に丸める
このメソッドでは、.toPrecision()
メソッドを使用して、単一の丸めの中間計算中に発生した浮動小数点の丸め誤差を取り除きます。
function round(num) {
var m = Number((Math.abs(num) * 100).toPrecision(15));
return Math.round(m) / 100 * Math.sign(num);
}
console.log(round(1.005));
出力:
1.01
JavaScript でカスタム関数を使用して数値を小数点以下 2 桁に丸める
function roundToTwo(num) {
return +(Math.round(num + 'e+2') + 'e-2');
}
console.log(roundToTwo(2.005));
このカスタム関数はすべてのコーナーケースを処理し、1.005
のような小数の丸めはこの関数によって適切に処理されます。
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn