Mortgage Repayment Calculator Commbank

Mortgage Repayment Calculator

Calculate your monthly mortgage repayment based on the loan amount, interest rate, and loan term.

Not calculated yet.

let repaymentSteps = “”; const currencySymbol = “$”, fixedCurrency = “USD”; function calculateRepayment(){ repaymentSteps=””; const loanAmount = parseFloat(document.getElementById(“loanAmount”).value); const interestRate = parseFloat(document.getElementById(“interestRate”).value) / 100 / 12; const loanTerm = parseFloat(document.getElementById(“loanTerm”).value) * 12; if (isNaN(loanAmount) || isNaN(interestRate) || isNaN(loanTerm) || loanAmount <= 0 || interestRate <= 0 || loanTerm <= 0) { alert("Please enter valid positive values for all fields."); return; } const monthlyRepayment = (loanAmount * interestRate) / (1 – Math.pow(1 + interestRate, -loanTerm)); document.getElementById("monthlyRepayment").value = formatCurrency(monthlyRepayment); repaymentSteps += `Inputs:
Loan Amount: ${formatCurrency(loanAmount)}
Interest Rate: ${(interestRate * 100).toFixed(2)}%
Loan Term: ${loanTerm / 12} years

`; repaymentSteps += `Formula:
Monthly Repayment = Loan Amount × Interest Rate / (1 – (1 + Interest Rate)^(-Loan Term))

`; repaymentSteps += `Result:
Monthly Repayment: ${formatCurrency(monthlyRepayment)}
`; repaymentSteps += `Tip: A shorter loan term means higher monthly repayments but less interest paid in total over the life of the loan.`; if(document.getElementById(“calculationSteps”).style.display===”block”){ document.getElementById(“calculationSteps”).innerHTML = repaymentSteps; } } function resetCalculator(){ document.querySelectorAll(“#calculator input”).forEach(el => el.value = “”); repaymentSteps = “”; document.getElementById(“calculationSteps”).innerHTML = “

Not calculated yet.

“; } function toggleCalculationSteps(){ const s = document.getElementById(“calculationSteps”); const a = document.getElementById(“toggleArrow”); if(s.style.display === “none” || s.style.display === “”){ s.style.display = “block”; a.style.transform = “rotate(180deg)”; s.innerHTML = repaymentSteps || “

Not calculated yet.

“; } else { s.style.display = “none”; a.style.transform = “rotate(0deg)”; } } function formatCurrency(n) { return currencySymbol + n.toFixed(2) + ” ” + fixedCurrency; }

Leave a Reply

Your email address will not be published. Required fields are marked *