Home Loan Payoff Calculator (Extra Payments)
function calculateLoanPayoff() {
const loanAmount = parseFloat(document.getElementById(“loanAmount”).value);
const interestRate = parseFloat(document.getElementById(“interestRate”).value) / 100 / 12;
const loanTerm = parseInt(document.getElementById(“loanTerm”).value) * 12;
const extraPayment = parseFloat(document.getElementById(“extraPayment”).value);
const monthlyPayment = parseFloat(document.getElementById(“monthlyPayment”).value);
if (isNaN(loanAmount) || isNaN(interestRate) || isNaN(loanTerm) || isNaN(extraPayment) || isNaN(monthlyPayment)) {
alert(“Please fill in all fields with valid numbers.”);
return;
}
let totalPayment = 0;
let balance = loanAmount;
let totalInterest = 0;
let months = 0;
while (balance > 0) {
let interest = balance * interestRate;
let principal = monthlyPayment – interest;
balance -= (principal + extraPayment);
totalPayment += (monthlyPayment + extraPayment);
totalInterest += interest;
months++;
if (balance <= 0) {
break;
}
}
const yearsToPayoff = months / 12;
document.getElementById("totalInterest").value = totalInterest.toFixed(2);
document.getElementById("loanPayoffTime").value = yearsToPayoff.toFixed(2);
}