通用贷款计算器js 计算方法

等额本息还款计算:

/**
* ---------------------------------等额本息还款计算----------------------------------------------------
* @param float year_lilv 年利率
* @param float money 贷款金额/万
* @param float month 贷款期限/月
* @returns array 计算结果 array(chbj=>277777777.7777778 ,chbx=>33236.11111111111, ....);
*/
function mydebx(year_lilv, money, month) {
money = (money * 10000);

var active = year_lilv * 10 / 12 * 0.001;
var t1 = Math.pow(1 + active, month);
var t2 = t1 - 1;
var tmp = t1 / t2;
var monthratio = active * tmp; //月利率
var monthBack = (money * monthratio).toFixed(2); //每月支付本息
year_lilv = year_lilv * 0.01; //百分比
var yue_lilv = ((year_lilv / 12));
var objArray = new Array(); //等额本息结果二维数组
var ljch_bj = 0; //累积偿还本金
var pre_sybj = 0; //上一个月剩余本金
var i = 1;
for (i = 1; i <= month; i++) { //等额本息
objArray[i - 1] = new Array(); //声明二维,每一个一维数组里面的一个元素都是一个数组;
objArray[i - 1]['qc'] = i; //期次
objArray[i - 1]['chbx'] = monthBack; //第i个月,偿还本息(元) 月供
if (i == 1) { //第一个月
pre_sybj = money;
} else {
pre_sybj = objArray[i - 2]['sybj'];
}
objArray[i - 1]['chlx'] = (pre_sybj * yue_lilv).toFixed(2); //第i个月,偿还利息(元)每月付息额 =(贷款本金-已还清贷款本金)×月利率
var chbj = (objArray[i - 1]['chbx'] - objArray[i - 1]['chlx']); //第i个月,偿还本金(元)
objArray[i - 1]['chbj'] = chbj.toFixed(2);
ljch_bj += chbj;
var sybj = (money - ljch_bj);
objArray[i - 1]['sybj'] = sybj.toFixed(2); //第i个月,剩余本金(元)
if (sybj <= 1) { //最后一个月出现小于1元的值
objArray[i - 1]['sybj'] = 0.00; //第i个月,剩余本金(元)
}
}
var yg = monthBack; //月供
var ljhkze = monthBack * month; //累计还款总额
var lxze = ljhkze - money; //利息总额
var yxxdy = monthBack * 2; //月薪需大于
var resArray = new Array();
resArray['simp_res'] = new Array(); //顶部基础信息数组
resArray['list_res'] = new Array(); //底部列表信息数组
resArray['simp_res']['yg'] = parseFloat(yg).toFixed(0);
resArray['simp_res']['ljhkze'] = parseFloat(ljhkze).toFixed(0);
resArray['simp_res']['lxze'] = parseFloat(lxze).toFixed(0);
resArray['simp_res']['yxxdy'] = parseFloat(yxxdy).toFixed(0);
resArray['list_res'] = objArray;
// console.log(resArray);
return resArray;
}

等额本金还款法:

/**
* ---------------------------------等额本金还款法----------------------------------------------------
* @param float year_lilv 年利率
* @param float money 贷款金额/万
* @param float month 贷款期限/月
* @returns array 计算结果 array(chbj=>277777777.7777778 ,chbx=>33236.11111111111, ....);
*/
function mydebj(year_lilv, money, month) {
money = money * 10000;

var active = year_lilv * 10 / 12 * 0.001;
var objArray = new Array();
var interestM = 0; //月还款额
var interestTotal = 0; //累计还款总额
var chbj = money / month; //每月偿还本金(元) month 3年36
for (var i = 1; i <= month; i++) {
var t1 = (money - money * (i - 1) / month) * active; //第i月还款利息
interestM = money / month + t1; //第i月还款额
objArray[i - 1] = new Array(); //声明二维,每一个一维数组里面的一个元素都是一个数组;
objArray[i - 1]['qc'] = i; //期次
objArray[i - 1]['chbx'] = (interestM).toFixed(2); //第i个月,偿还本息(元) 月供
objArray[i - 1]['chlx'] = (interestM - chbj).toFixed(2); //第i个月,偿还利息(元)
objArray[i - 1]['chbj'] = (chbj).toFixed(2); //第i个月,偿还本金(元)
objArray[i - 1]['sybj'] = (money - (chbj * i)).toFixed(2); //第i个月,剩余本金(元)
if (objArray[i - 1]['sybj'] <= 1) { //最后一个月出现小于1元的值
objArray[i - 1]['sybj'] = 0.00; //第i个月,剩余本金(元)
}
interestTotal = interestTotal + interestM;
}
interestTotal = (Math.round(interestTotal * 100)) / 100; //累计还款总额
var yg = objArray[0]['chbx']; //月供 最高月供
var ljhkze = interestTotal; //累计还款总额
var lxze = (ljhkze - money); //利息总额
lxze = lxze.toFixed(0);
var yxxdy = (parseFloat(objArray[0]['chbx']) + parseFloat(objArray[month - 1]['chbx'])); //月薪需大于
yxxdy = yxxdy.toFixed(0);
var resArray = new Array();
resArray['simp_res'] = new Array(); //顶部基础信息数组
resArray['list_res'] = new Array(); //底部列表信息数组
resArray['simp_res']['yg'] = parseFloat(yg).toFixed(0);
resArray['simp_res']['ljhkze'] = parseFloat(ljhkze).toFixed(0);
resArray['simp_res']['lxze'] = parseFloat(lxze).toFixed(0);
resArray['simp_res']['yxxdy'] = parseFloat(yxxdy).toFixed(0);
resArray['list_res'] = objArray;
// console.log(resArray);
return resArray;
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端宇宙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值