[英]How to calculate point values in javascript?
我已經編寫了代碼來計算整數值等值。
function add_number(inp) {
var tr = inp.parentNode.parentNode;
var first_number = parseInt(tr.querySelector('[data-id="qty"]').value);
var second_number = parseInt(tr.querySelector('[data-id="amtper"]').value);
var result = first_number * second_number;
tr.querySelector('[data-id="total"]').value = result ? result : '';
}
通過上面的代碼,如果我計算值 10.60*10 = 106,則只能計算舍入值(應顯示該值)。 但我得到了 100。
如何計算點值?
如果我計算值 10.60*10 = 106,(應該顯示該值)。 但我得到了 100
因為當你執行 parseInt 時,它返回一個沒有任何十進制值的 Intger。
使用parseFloat
代替,替換
var first_number = parseInt(tr.querySelector('[data-id="qty"]').value);
var second_number = parseInt(tr.querySelector('[data-id="amtper"]').value);
和
var first_number = parseFloat(tr.querySelector('[data-id="qty"]').value);
var second_number = parseFloat(tr.querySelector('[data-id="amtper"]').value);
parseInt()
僅解析沒有十進制值的整數值。
使用parseFloat()
代替。
var first_number = parseFloat(tr.querySelector('[data-id="qty"]').value);
var second_number = parseFloat(tr.querySelector('[data-id="amtper"]').value);
parseInt 將在乘法之前將 10.60 轉換為 10。 您需要改用 parseFloat 。 如果您期望整數或小數點后具有固定位數的數字,則可以使用 precision 參數進行設置。
function add_number(inp, precision) {
precision = typeof precision !== "number"? 0: precision;
var tr = inp.parentNode.parentNode;
var first_number = parseFloat(tr.querySelector('[data-id="qty"]').value);
var second_number = parseFloat(tr.querySelector('[data-id="amtper"]').value);
var result = (first_number * second_number).toFixed(precision);
tr.querySelector('[data-id="total"]').value = result ? result : '';
}
使用parseFloat
嗎? 看到這個:
function add_number(inp) { var tr = inp.parentNode.parentNode; var first_number = parseFloat(tr.querySelector('[data-id="qty"]').value); var second_number = parseFloat(tr.querySelector('[data-id="amtper"]').value); var result = first_number * second_number; tr.querySelector('[data-id="total"]').value = result ? result : ''; } add_number(document.getElementById("inp"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div> QTY: <input data-id="qty" value="100"><br> AMTPER: <input data-id="amtper" value="1.06"> <div> <div id="inp"></div> </div> <hr> Total, filled by JS: <input data-id="total"> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.