JS の丸めメソッド: 1. tofixed メソッド (指定された小数点以下の桁数で Number を四捨五入できるメソッド)、2.round() メソッド (数値を最も近い整数に四捨五入できるメソッド)。
1. tofixed メソッド
toFixed() メソッドは、Number を指定された小数点以下の桁数に丸めることができます。たとえば、データ Num を小数点以下 2 桁に保つ場合、toFixed(Num) と表現されますが、四捨五入のルールが数学とは異なり、バンカーの四捨五入ルールが使用されます。銀行家の四捨五入法、その本質は、5 に四捨五入して均等にする方法 (5 に四捨五入し、均等にすることとも呼ばれます) です。具体的なルールは次のとおりです:
簡単に言うと、5 に切り上げることを検討してください。5 の後の数が 0 でない場合は 1 を加えます。5 の後の数が 0 の場合は、奇数か偶数を調べます。 5 つ前の数が偶数の場合は破棄し、5 つ前の数が奇数の場合は破棄します。
明らかに、このルールは私たちが通常データを扱う方法に準拠していません。この問題を解決するには、Math.round メソッドを使用して実装をカスタマイズし、処理のために保持するデータのビット数を指定します。
2、round メソッド
round() メソッドは、数値を最も近い整数に丸めることができます。例: Math.round(x) は、x を最も近い整数に変換します。四捨五入の方法には、数学の四捨五入の規則に従った四捨五入法が使用されます。小数の処理はそれほど便利ではありませんが、さまざまな要件に応じてカスタマイズできます。
例: 小数点以下 2 桁の X を処理するには、Math.round(X * 100) / 100 を使用して処理できます。
その他の内容:
JavaScript では、値を四捨五入するシナリオは次のとおりです:
切り上げ: ceil 切り捨て: Floor 四捨五入: 固定精度の丸め: toFixed固定長: toPrecision 丸め: parseInt、ビット演算
この記事では、これら 6 つの API について簡単に説明し、まとめます。
1. 切り上げ: ceil
ceil は「天井」を意味し、値を超え、その数値に最も近い整数を意味します。 ceil は Math オブジェクトの静的メソッドであり、パラメータを渡す必要があります。その呼び出しメソッドは次のとおりです:
Math.ceil(12.34); //13Math.ceil(12.68); //13
2. 切り捨て: フロア
フロアは「フロア」を意味し、値の下にある最も近い整数を意味します。 Floor は Math オブジェクトの静的メソッドであり、パラメーターを渡す必要があります。呼び出しメソッドは次のとおりです:
Math.floor(12.34); // 12Math.floor(12.68); // 12
3. 丸め:round
round の機能は、浮動小数点数を丸め、整数の桁を保持することです。 Round も Math オブジェクトの静的メソッドであり、パラメーターを渡す必要があります。その呼び出しメソッドは次のとおりです:
Math.round(12.34); // 12Math.round(12.54); // 13
4. 固定精度: toFixed
toFixed は上記の 3 つのメソッドとは異なり、Number プロトタイプに実装されたメソッドであり、その機能は浮動小数点数を四捨五入することです。固定小数点以下の桁数を保持します。 toFixed はパラメータを渡す必要があり、その呼び出しメソッドは次のとおりです:
100.456001.toFixed(2); // 100.46100.456001.toFixed(3); // 100.456
その他の型の場合は、まず Number() を使用して数値型に変換し、次にビット演算を実行します。
~~ '100.12' // 100, Number('100.12') == 100.12'100.50' >> 0; // 100, Number('100.50') == 100.50'100.96' < ;
ビット操作は最も基本的なレベルで動作します。つまり、値を表すメモリ内のビットに基づいて値を操作します。
ビット演算を丸めることができる理由は次のとおりです。
ECMAScript の値は 64 ビットの倍精度浮動小数点数として格納されますが、ビット演算は整数にのみ適用できます。 , そのため、最初に 64 ビット浮動小数点数を変換する必要があります。小数点数は 32 ビット整数に変換され、次にビット演算が実行され、最後に計算結果が 64 ビット浮動小数点数に変換されて保存されます。 。
以上がjsの丸めの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。