2016-07-05 132 views
0

使用下列庫: http://jsfromhell.com/classes/bignumber大整數不被四捨五入

我的大整數沒有被四捨五入。

我的代碼如下:

x=1234.56; 
y = new BigNumber(x); 
document.write("<br>1 "+Math.round(x) +"<br>"); 
document.write("<br>2 "+y.round()+"<br>"); // '1235' 
document.write("<br>3 "+y.round(1)+"<br>"); // '1235.6' 
document.write("<br>4 "+y.round(2)+"<br>"); // '1235.56' 
document.write("<br>5 "+y.round(10)+"<br>"); // '1235.56' 
document.write("<br>6 "+y.round(0, 1)+"<br>"); // '1234' 
document.write("<br>7 "+y.round(0, 6)+"<br>"); // '1235' 
document.write("<br>8 "+y.round(1, 1)+"<br>"); // '1234.5' 
document.write("<br>9 "+y.round(1, BigNumber.ROUND_HALF_EVEN)+"<br>"); // '1234.6' 

我收到以下輸出:

2 1234.56

3 1234.56

4 1234.56

5 1234.56

6 1234.56

7 1234.56

8 1234.56

9 1234.56

+2

@JonathanM有一個'.round()'方法[這裏](HTTP://mikemcl.github。 io/bignumber.js /#round) –

+0

@JonathanM你只看類方法,而不是實例方法。 –

+0

對不起,我的眼睛交叉。 :) –

回答

0

您正在使用要求的精度和圓型您當庫創建您的BigNumberround()方法沒有采取任何參數河

所以,你應該改變你的代碼,其中:

y = new BigNumber(x); 

y = new BigNumber(x, 0, 1); 
+0

'.round()'方法需要參數。看看[這裏](http://mikemcl.github.io/bignumber.js/#round) –

+1

不是他發佈的鏈接的代碼,其中頁面中的文檔有:'BigNumber.round(void):void' –