JavaScriptで数値を四捨五入せずに小数点第2位まで切り捨てるにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-10 05:44:02
オリジナル
962 人が閲覧しました

How to Truncate Numbers to Two Decimal Places Without Rounding in JavaScript?

数値を四捨五入せずに小数点第 2 位まで切り捨てる

JavaScript で数値を扱う場合、多くの場合、数値を特定の桁数で表示する必要があります。小数点以下の桁。 toFixed() メソッドを使用すると、指定した小数点以下の桁数に数値を四捨五入することができますが、四捨五入せずに数値を切り捨てる必要がある場合はどうすればよいでしょうか?

次の例を考えてみましょう:

var num = parseFloat(15.7784514);
document.write(num.toFixed(1) + "<br />");
document.write(num.toFixed(2) + "<br />");
document.write(num.toFixed(3) + "<br />");
document.write(num.toFixed(10));
ログイン後にコピー

このコードの結果は次の出力になります:

15.8
15.78
15.778
15.7784514000
ログイン後にコピー

ご覧のとおり、toFixed() メソッドは数値を指定された小数点以下の桁数に丸めます。代わりに数値を切り捨てるには、数値を文字列に変換し、正規表現を使用して小数点第 2 位までの数値と一致させます。

function calc(theform) {
  var num = theform.original.value, rounded = theform.rounded
  var with2Decimals = num.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0]
  rounded.value = with2Decimals
}
ログイン後にコピー

このコードは、元の数値を文字列に変換します。正規表現 ^-?d (?:.d{0,2})? を使用します。小数点第 2 位までの数値を照合します。結果の文字列は、フォーム内の丸められた要素に割り当てられます。

この方法では、数値が丸められずに小数点以下 2 桁で切り捨てられます。たとえば、元の数値が 15.7784514 の場合、切り捨てられた値は 15.77 になります。

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

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