[英]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。 為什么?
parseInt可以解析的最大整數為+/- 9007199254740991
。 在您的情況下,超出了范圍,因此由於溢出了范圍 ,因此得出的結果為1。
另請注意, ECMAScript指定:
您需要使用BigInteger庫來處理這樣的大量數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.