js中的变量decl

时间:2011-02-01 22:23:55

标签: javascript

function antalAr(lan, amortering)
        {
               totalAmorteringAr = amortering * 12;
               for( var svar = 0; totalAmorteringAr * svar <= lan; svar++){}
               return svar;
        }

        var tal1 = antalAr(1000000,1000);
        document.writeln("Ett lån på 1000000 kr är betalt efter " + Math.ceil(tal1) + " år om amorteringen är 1000 kr/mån.");

        var tal2 = antalAr(1500000,500);
        document.writeln("Ett lån på 1500000 kr är betalt efter " + Math.ceil(tal2) + " år om amorteringen är 500 kr/mån.");

应该打印出正确的答案:

Ettlånpå1000000krärbetaltefter84åromamorteringenär1000kr /mån。 Ettlånpå1500000krärbetaltefter250åromamorteringenär500kr /mån

但是它会增加一年:Ettlånpå1500000krärbetaltefter 251 åromamorteringenär500kr /mån

为什么吗

2 个答案:

答案 0 :(得分:4)

使用外语调试代码非常困难,但在我看来,你增加的次数太多了:

for( var svar = 0; totalAmorteringAr * svar <= lan; svar++){}

如果您将<=更改为<,您的代码应该有效。

答案 1 :(得分:0)

Math.ceil应该是Math.floor。

ceil向上,而不是向下,这意味着它将“结束”这一年。