2016-06-18 4 views
1

JavaScriptで大きな数字のライブラリを使用していて、this oneを試してみました。JavaScriptで大きな数字のライブラリが動作していません

私はのような大きな整数印刷しよう:

var x= bigInt("53542885039854749852"); 
document.write(x+"<br>"); 

をしかし、結果は次のとおりです。

はまた、私は

var x= bigInt("104156103156113102156118165104101120101"); 
document.write(x+"<br>"); 

を試した結果は次のとおりです。1.041561031561131e +38

誰かがこの問題の解決に役立つことができますか?

答えて

5

toString()メソッドを使用すると、すべての数字の文字列を取得できます。

算術演算子は、むしろtoString機能よりもvalueOf機能をトリガすることに注意してください。 bigIntegerを文字列に変換するときは、空の文字列を追加する代わりにtoStringメソッドまたはString関数を使用する必要があります。

  • bigInt("999999999999999999").toString() => "999999999999999999"
  • String(bigInt("999999999999999999")) => "999999999999999999"
  • bigInt("999999999999999999") + "" => 1000000000000000000

var x= bigInt("53542885039854749852"); 
 
document.write(x + "<br>");    // this calls valueOf 
 
document.write(x.valueOf() + "<br>"); 
 
document.write(x.toString() + "<br>");
<script src="http://peterolson.github.com/BigInteger.js/BigInteger.min.js"></script>

何かを計算するには、トンを使用することができます彼はクラスのメソッドです。


 
var y = bigInt("104156103156113102156118165104101120101"); 
 
document.write(y.plus(1).toString() + "<br>"); 
 
document.write(y.multiply(2).toString() + "<br>"); 
 
document.write(y.plus(y).toString() + "<br>");
<script src="http://peterolson.github.com/BigInteger.js/BigInteger.min.js"></script>

+3

あなたは 'BigInteger'の方法を使用する必要があります。 –

+0

は 'BigInteger(string)'の代わりに 'bigInt(string)'を使います。 –

+0

あなたが計算したいものを指定してください。 –

関連する問題