【发布时间】:2020-07-06 11:35:12
【问题描述】:
我正在尝试制作一个预算应用程序,该应用程序会在减去收入减去支出后提醒用户余额,我的警报一直说 Nan。我正在使用 for 循环来总结来自用户的收入和支出输入。我已经包含了我的代码。
谢谢!
function Maincalc(){
var incomeVal = document.getElementsByClassName("income");
var expenseVal = document.getElementsByClassName("expenses");
var tot = 0;
for (var i = 0; i < incomeVal.length; i++){
if(parseInt(incomeVal[i].value))
var incomeTot = tot + parseInt(incomeVal[i].value);
}
for (var i = 0; i < expenseVal.length; i++){
if(parseInt(expenseVal[i].value))
var expenseTot = tot + parseInt(expenseVal[i].value);
}
var x = incomeTot - expenseTot;
alert(x);
}
var btn = document.getElementById("submit");
btn.addEventListener("click", Maincalc);
【问题讨论】:
-
1:不要使用
alert,它很古老,实际上没用。使用控制台 API(console.log等)或使用真正的模式。 2:这个出错的例子是什么? (例如,当事情“破裂”时涉及到哪些价值?) -
尝试使用浏览器的一些开发工具(通常按 F12)来逐步执行脚本。在您认为可能出错的地方设置一些断点。
-
@Mike'Pomax'Kamermans 我在想可能是对输入值求和的 for 循环无法正常工作。
-
incomeVal[i].value中的value是什么?如果您尝试获取 html 元素中的内部文本,则应为incomeVal[i].textContent
标签: javascript html for-loop nan