Monthly
Fortnightly
Weekly
Estimated Repayment: $0
Total Interest: $0
Total Loan Repayment: $0
document.getElementById(‘calculateButton’).addEventListener(‘click’, function() {
const loanAmount = parseFloat(document.getElementById(‘loanAmount’).value);
const interestRate = parseFloat(document.getElementById(‘interestRate’).value);
const loanTerm = parseFloat(document.getElementById(‘loanTerm’).value);
const repaymentFrequency = document.getElementById(‘repaymentFrequency’).value;
if (isNaN(loanAmount) || isNaN(interestRate) || isNaN(loanTerm) || loanAmount <= 0 || interestRate <= 0 || loanTerm <= 0) {
alert("Please enter valid positive values for all fields.");
return;
}
let repaymentFrequencyMultiplier = 12;
if (repaymentFrequency === 'fortnightly') {
repaymentFrequencyMultiplier = 26;
} else if (repaymentFrequency === 'weekly') {
repaymentFrequencyMultiplier = 52;
}
const monthlyInterestRate = interestRate / 100 / 12;
const numberOfPayments = loanTerm * repaymentFrequencyMultiplier;
const repayment = (loanAmount * monthlyInterestRate) / (1 – Math.pow(1 + monthlyInterestRate, -numberOfPayments));
const totalRepayment = repayment * numberOfPayments;
const totalInterest = totalRepayment – loanAmount;
document.getElementById('repaymentResult').textContent = `$${repayment.toFixed(2)}`;
document.getElementById('totalInterestResult').textContent = `$${totalInterest.toFixed(2)}`;
document.getElementById('totalRepaymentResult').textContent = `$${totalRepayment.toFixed(2)}`;
});
document.getElementById('resetButton').addEventListener('click', function() {
document.getElementById('loanAmount').value = '';
document.getElementById('interestRate').value = '';
document.getElementById('loanTerm').value = '';
document.getElementById('repaymentFrequency').value = 'monthly';
document.getElementById('repaymentResult').textContent = '$0';
document.getElementById('totalInterestResult').textContent = '$0';
document.getElementById('totalRepaymentResult').textContent = '$0';
});