簡體   English   中英

JavaScript:算術運算失敗

[英]JavaScript: arithmetic operation fails

我正在JavaScript中執行以下算術運算:

var txtFirstNumberValue = document.getElementById('txt1').value;
var txtSecondNumberValue = document.getElementById('txt2').value;
var result = (parseInt(txtSecondNumberValue) - 
              parseInt(txtFirstNumberValue)) +1;

當我提供以下輸入時:

txt1 = 8946270000000000094
txt2 = 8946270000000000082

結果我得到1。 為什么?

參考此JSFiddle

parseInt可以解析的最大整數為+/- 9007199254740991 在您的情況下,超出了范圍,因此由於溢出了范圍 ,因此得出的結果為1。

另請注意, ECMAScript指定:

  • 有10位數字:(0-9)
  • 有26個字符:(az)

您需要使用BigInteger庫來處理這樣的大量數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM