我需要创建一个表格来计算每月付款。
我有一个数据库表,看起来像这样:
我创建了此函数:
function calculatePMT () {
var loan_amount = document.getElementById("loan_amount").value;
var no_of_months = document.getElementById("no_of_months").value;
for (var x = 0; x < passedArray.length; x++) {
const val = passedArray[x];
if (loan_amount >= val[1] && loan_amount < val[2]) {
if (no_of_months == val[3]) {
var rate = val[0];
}
}
}
pmt = (loan_amount/no_of_months)*(1+(rate/10));
if(pmt != "NAN") {
document.getElementById("ans").innerHTML = pmt;
document.getElementById("amount").value = pmt;
}
}
问题是在某些情况下(金额为600、700、800、900或5900以上),显示为NAN错误。
答案 0 :(得分:0)
对于超过5900的贷款,您只能获得60个月的贷款,因此,由于rate
中的undefined
为pmt = (loan_amount/no_of_months)*(1+(rate/10))
,贷款将在其他数月内失效。
对于其他输入情况,我想toFixed
函数存在一些问题。建议您使用return parseFloat(value.toFixed(2))
之类的简单方法来尝试找出问题所在