ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptで数値を四捨五入せずに小数点第2位まで切り捨てるにはどうすればよいですか?

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

Barbara Streisand
Barbara Streisandオリジナル
2024-11-10 05:44:02960ブラウズ

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。