我如何在Javascript中编写此公式?

时间:2015-07-25 20:48:23

标签: javascript

我正在进行一个项目,它需要计算抵押贷款计算,但我在将公式放入javascript时遇到了问题。

公式为:

M = P I(1 + I)^ n /(1 + I)^ n - 1

感谢任何帮助,谢谢

P =贷款可用

我=兴趣

N =期限

3 个答案:

答案 0 :(得分:2)

将其分解为一系列步骤。

  • 乘法就像它一样简单:I*(1+I)
  • 分部是相同的:I/(1+I)
  • n的力量表示为:Math.pow(3, 5); //3 to the power of 5

Math.pow()可能是你唯一还不知道的事情。

无关但有用,

将您的公式包装成一个功能,并且您有抵押贷款计算功能

calculateMortgage(p,i,n) { result = //translate the formula in the way I indicated above return result; }

并称之为:

var mortgage = calculateMortgage(300,3,2); // 'mortgage' variable will now hold the mortgage for L=300, I=3, N=2

另外,您发布的公式确实没有任何意义 - 为什么P和{}之间有空白? I一开始?有些东西不见了。

答案 1 :(得分:0)

试试这个:Math.pow(p*i*(1+i),n)/Math.pow(1+i,n-1)

Math.pow(a,2)与^ 2

相同

如果P不应该与分子一起 此

p * (Math.pow(i*(1+i),n)/Math.pow(1+i,n-1))

p * (Math.pow((i+i*i),n)/Math.pow(1+i,n-1))

答案 2 :(得分:0)

var M;
var P;
var I;

M = P*(Math.pow(I*(1+I),n)) / (Math.pow((1+I),n)-1);

这看起来对你好吗?我从here.

获得了正确设计的公式

就像尼古拉斯上面所说的那样,你可以使用函数让它变得更加容易。

var M;
function calculateMortgage(P, I, N){
    M = P*(Math.pow(I*(1+I),n)) / (Math.pow((1+I),n)-1);
    alert("Your mortgage is" + M);
}

只需使用您的值调用calculateMortgage(100, 100, 100);即可自动给出答案。