0

javascript ローン計算プログラムを作成しようとしています。ループで各行に異なる数字を入れることができないようです。24か月、36か月、48か月、60か月から始まる返済額を表示することになっています。関数を使用して計算を行っていますが、常に 24 か月分の結果が得られます。nummonths を 36、48、および 60 に変更する必要があることは知っていますが、それを行う方法がわかりません。ループがループするたびに12か月が追加されると思いました。また、数値を通貨にどのようにフォーマットしますか? 最後に非常に長い数字を取得しています。calculate() で parseFloat を実行しようとしましたが、エラーが発生します。これが私のコードです:

<html>
<BODY BGCOLOR="#FFC0CB">
<head>
<title>Chapter 6 Assignment 2</title>
</head>
<body>
<h1>Loan Calculator</h1>

<script type="text/javascript">
var vehicleprice = window.prompt("What is the vehicle price?", "");
var downpayment = window.prompt("What is the amount of the down payment?", "");
var annualinterest = window.prompt("What is the annual interest rate for the loan?", "");
var nummonths = 24
var loanamount = vehicleprice - downpayment
var monthlyinterest = annualinterest / 1200

vehicleprice = parseFloat(vehicleprice).toFixed(2);
downpayment = parseFloat(downpayment).toFixed(2);
loanamount = parseFloat(loanamount).toFixed(2);

function calculate()
             {
              var baseamount = Math.pow(1 + monthlyinterest, nummonths );
              return loanamount * monthlyinterest / (1 - (1/baseamount));
             }

document.write("Vehicle price: $" +vehicleprice+ "<br>");
document.write("Down payment: $" +downpayment+ "<br>");
document.write("Interest Rate: " +annualinterest+ "%<br>");
document.write("Loan Amount: $" +loanamount+ "<br>");

for (var count=2;count<=6;count+=1)
    {
    document.write(+calculate()+"<br />");
    }
</script>
</body>
</html>
4

2 に答える 2