我正在尝试用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');
答案 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)