ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript で数値を小数点第 2 位まで正確に四捨五入するにはどうすればよいですか?

JavaScript で数値を小数点第 2 位まで正確に四捨五入するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-28 16:55:11
オリジナル
751 人が閲覧しました

How to Accurately Round Numbers to Two Decimal Places in JavaScript?

必要に応じて数値を小数点第 2 位に四捨五入する

数値データを処理する場合、多くの場合、値を指定された小数点以下の桁に四捨五入する必要があります。ただし、場合によっては、値がまだ希望の精度に四捨五入されていない場合にのみ丸めたいことがあります。

次のシナリオを考えてみましょう。必要な場合にのみ、数値を小数点以下 2 桁までに四捨五入したいとします。 。例:

Input:
10
1.7777777
9.1

Output:
10
1.78
9.1
ログイン後にコピー

Math.round() の使用

考えられる解決策の 1 つは、Math.round() メソッドを使用することです。

let roundedNum = Math.round(num * 100) / 100;
ログイン後にコピー

このアプローチでは、数値を整数に丸める前に 100 を掛けます (小数点以下を実質的にシフトします)。右に 2 桁をポイントします)、それを 100 で割って、小数点以下 2 桁の値を取得します。

Using Number.EPSILON

ただし、このアプローチでは境界線のケースを正しく処理できません。たとえば、1.005 は 1.00 ではなく 1.01 に四捨五入されます。これに対処するには、Number.EPSILON を使用します。

let roundedNum = Math.round((num + Number.EPSILON) * 100) / 100;
ログイン後にコピー

Number.EPSILON は、重要であると考えられる 2 つの浮動小数点数間の最小差を表します。これを数値に追加すると、境界線の場合でも値が正しく丸められます。

以上がJavaScript で数値を小数点第 2 位まで正確に四捨五入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート