我使用parseInt将.values从字符串转换为数字。但是,如果用户输入十进制值,则输出为NaN。这是我的代码:晚餐成本计算器麻烦转换字符串为整数
Dinner Cost:<input type="text" id="cost" /><br /><br />
Tax Rate:<input type="text" id="taxRate" /><br /><br />
<button id="btn">Determine Total Costs</button><br /><br />
<p id="para"></p>
document.getElementById("btn").addEventListener('click', totalCosts);
function totalCosts() {
var dinnerCosts = document.getElementById("cost").value;
var taxRate = document.getElementById("taxRate").value;
taxRate = parseInt(taxRate);
dinnerCosts = parseInt(dinnerCosts);
var taxCost = dinnerCosts * taxRate;
var totalCost = dinnerCosts + taxCost;
return document.getElementById("para").innerHTML = "Your dinner cost " + dinnerCosts + ", your tax costs " + taxCost + ", for a total cost of " + totalCost;
}
我在做什么错?有没有更合理的方式将这些默认字符串转换为数字而不是parseInt?
谢谢!
使用parseFloat()而不是parseInt函数()期待一个浮点整数时。即使数字是一个适当的整数,也最好使用parseFloat()。 –