如何使用Math.pow()来解决复合兴趣?

时间:2015-12-10 16:53:44

标签: javascript math exponent

我正在尝试用javascript计算复合兴趣。我相信我拥有所需的所有价值观,而且我也有公式。我正在努力将公式的^部分翻译为Math.pow()。很明显,我不知道如何在下面正确使用它...

这是公式:

A = P(1 + r/n)^nt

n = 365 – assuming daily compounding
P = Principal
r = interest rate
t = years
A = accrued amount: principal + interest

这是我到目前为止所做的:

totalInterest = (principal) * (1 + loanInterestRate / 365)(Math.pow(daysOfInterest, yearsOfInterest));

例如,我将prime设置为3.25%,付款到期日为12/30/2016。使用值看起来像这样:

(50000) * (1 + 0.0325 / 386) Math.pow(386, 1);

// 386 is the number of days from today till 12/30/2016. 
// 1 is: 1 year from today till 12/30/2016
显然,这是行不通的。我不确定如何正确实施数学,任何建议都会有所帮助。

谢谢!

修改

再次感谢您的回答。这正是我需要的推动 - 显然我无法数学。

我想用我的完整答案更新这个......

totalInterest = Math.round(((principal) * Math.pow(1 + loanInterestRate / 365, daysOfInterest * 1)) - principal);
loanNetCost = (principal) + (loanTotalInterest);

alert('You will owe this much money: + loanNetCost');

3 个答案:

答案 0 :(得分:2)

您需要将其更改为:

(50000) * Math.pow(1 + 0.0325 / 386, 386 * 1)

答案 1 :(得分:1)

A = P(1 + r/n)^nt

n = 365 – assuming daily compounding
P = Principal
r = interest rate
t = years
A = accrued amount: principal + interest

转到

A = P * Math.pow(1 + r/n, nt);

答案 2 :(得分:1)

Math.pow(daysOfInterest, yearsOfInterest)

表示n^t,因此Math.pow(386, 1)表示386为1的幂。

您需要将所有表达式(1 + r/n)提升到nt。

的幂

给予

(50000) * Math.pow(1 + 0.0325 / 386, 386 * 1)