JavaScriptで整数に丸めるにはどうすればよいですか?


92

特定の割合を計算する次のコードがあります。

var x = 6.5;
var total;

total = x/15*100;

// Result  43.3333333333

結果として得たいのは正確な数で43あり、合計である43.5場合は四捨五入する必要があります44

JavaScriptでこれを行う方法はありますか?

回答:


167

Math.round()関数を使用して、結果を最も近い整数に丸めます。


私も助けてくれました!:) MDNリンクのバディをありがとう:)
Afzaal Ahmad Zeeshan 2013

1
リンクのクレジットは@Jeremyに送られます。それを挿入してくれてありがとう-私が書いた5番目の答えがこれと同じくらい多くの票を獲得するのはSOで始めるのがもっと楽しくなりました。これは確かにリンクによるものでした。:-)
hmakholmがモニカに残った

2
OPは切り上げませんでしたか?もしそうなら、Math.ceil()がより適切でしょう
martellalex

1
@martellalex:質問から、OPは43.333を43に丸め、43.5を44に丸めることを望みました。これはECMAScriptのMath.round()の最も近い丸めの動作と正の無限大に向かって正確な半整数実行する動作に完全に一致します。
hmakholmがモニカに残った2017

65
//method 1
Math.ceil(); // rounds up
Math.floor(); // rounds down
Math.round(); // does method 2 in 1 call

//method 2
var number = 1.5; //float
var a = parseInt(number); // to int
number -= a; // get numbers on right of decimal

if(number < 0.5) // if less than round down
    round_down();
else // round up if more than
    round_up();

1つまたは組み合わせで問題が解決されます



8

Math.round数値を最も近い整数に丸めるために使用します。

total = Math.round(x/15*100);

4

float xを丸めるための非常に簡潔なソリューション:

x = 0|x+0.5

または、フロートをフローリングしたいだけの場合

x = 0|x

これはビット単位またはint 0であり、小数点以下のすべての値をドロップします

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.