js贷款还款计算:等额本金、等额本息、先息后本、等本等息
可以输出每种贷款方式还款汇总信息和每一期的还款明细。
网上大多只有一个计算器,或者只计算还款总额,还款方式也不全。
等额本息、等额本金还款方式借用的某位博主的代码,链接找不到了。
// 先息后本
function xxhb(year_lilv, money, month) {
money = money * 10000;
var objArray = new Array();
var interestM = 0; // 月还款额
var interestTotal = 0; // 累计还款总额
var chbj = 0; // 每月偿还本金0 最后一个月偿还全部本金
var lxze = money * year_lilv / 12 * 0.01 * month; // 利息总额
for (var i = 1; i <= month; i++) {
var t1 = lxze / month; //第i月还款利息
interestM = t1; //第i月还款额 = 每月偿还利息 最后一个月还款额 = 每月利息 + 贷款本金
if (i == month) { // 最后一个月
chbj = money; //
interestM = t1 + money;
}
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个月,剩余本金(元)
interestTotal = interestTotal + interestM;
}
interestTotal = (Math.round(interestTotal * 100)) / 100; //累计还款总额
var yg = objArray[0]['chbx']; //月供 最高月供
var ljhkze = interestTotal; //累计还款总额
var resArray = new Array();
resArray['list_res'] = new Array(); //列表信息数组
resArray['list_res'] = objArray;
resArray['simp_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);
return resArray;
}
// 等本等息
function dbdx(year_lilv, money, month) {
money = money * 10000;
var objArray = new Array();
var interestM = 0; // 月还款额
var interestTotal = 0; // 累计还款总额
var chbj = money / month; // 每月偿还本金 = 贷款金额 除以 月份
var lxze = money * year_lilv / 12 * 0.01 * month; // 利息总额
for (var i = 1; i <= month; i++) {
var t1 = lxze / month; //第i月还款利息
interestM = chbj + 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个月,剩余本金(元)
interestTotal = interestTotal + interestM;
}
interestTotal = (Math.round(interestTotal * 100)) / 100; //累计还款总额
var yg = objArray[0]['chbx']; //月供 最高月供
var ljhkze = interestTotal; //累计还款总额
var resArray = new Array();
resArray['list_res'] = new Array(); //列表信息数组
resArray['list_res'] = objArray;
resArray['simp_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);
return resArray;
}
// 等额本金
function debj(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;
return resArray;
}
// 等额本息
function debx(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;
return resArray;
}
js贷款还款计算:等额本金、等额本息、先息后本、等本等息相关推荐
- 等额本金等额本息工具类2023
等额本金&等额本息工具类2023 等额本金 等额本金 问题反馈 等额本金 import java.math.BigDecimal; import java.math.RoundingMode; ...
- 如何使用python进行等额本金-等额本息贷款计算
#贷款额为a,月利率为i,年利率为I,还款月数为n a = 500000.00 I = 0.11495 i = I/12 n = 60 print("-----等额本息计算,以5个月为例-- ...
- java 等额本金等额本息工具类
2019独角兽企业重金招聘Python工程师标准>>> 等额本息: /*** Description:等额本息工具类* Copyright: Copyright (corporati ...
- 银行业务中贷款算法等额本金等额本息算法程序
写一个贷款计算器,从网上找了一个算法,自己改了改可以用了,不错,分享给大家 import java.text.DecimalFormat; public class jshk { public sta ...
- 等额本金.等额本息.房贷计算
<?phpfunction debx(){$dkm = 12; //贷款月数,20年就是240个月$dkTotal = 2000; //贷款总额$dknl = 0.049; //贷款年利率$em ...
- Java计算等额本金和等额本息
Java计算等额本金和等额本息 等额本金 等额本息 等额本金 /*** 等额本金是指一种贷款的还款方式,是在还款期内把贷款数总额等分,每月偿还同等数额的本金和剩余贷款在该月所产生的利息,这样由于每月的 ...
- 房贷利率有无套路?Python解读“等额本金与等额本息”的差异所在
作者 | xiaoyu 来源 | Python数据科学 很多朋友留言说不知道房贷利率的不同归还方式是不是有套路,内心深表疑虑.我的第一反应是因为房贷很高,大家看到消费分期的套路自然而然就想到了房贷,很 ...
- python等额本息和等额本金_用Python解读房贷利率,要不要看随你
可能很多买过房.贷过款的朋友大概都知道怎么回事,但是我相信大部分人也没细研究过,而绝大部分人买房时更是任由房屋中介摆布,因为给了中介费相信他们可以算的明明白白,自己也就不过多深究了.但我觉得买房不是小 ...
- 等额本息,等额本金区别
等额本金,等额本息区别 买房银行贷款分为两种: 等额本金和等额本息 等额本息 等额本息定义:还款本金占比逐月递增,利息占比逐月递减,月还款数不变 由于每月的还款额度是一样的,其中每个月的还款包括了根据 ...
- 等额本金VS等额本息
升息尚无定论 个人房贷市场已现不小波澜 ? http://www.soufun.com 房地产门户-搜房 2004-08-17 11:13:00.0? ? 地产资讯播报:http://news.sh. ...
最新文章
- 如何仅使用HTML和JavaScript构建简单的URL缩短器
- pycharm多光标设置
- LeetCode-剑指 Offer 53 - I. 在排序数组中查找数字 I
- python selenium webdriver_Python:selenium.webdriver问题(服务器上没有X)
- Hexo+码云+git快速搭建免费的静态Blog
- idea terminal中文乱码_Terminal优雅的办公带来超高的效率
- 数据库基础知识——变量
- 以对象的方式来访问xml数据表(二)
- 如何在sublime编辑器中,执行命令行脚本
- linux下apache安装ssl,linux下apache安装ssl步骤
- lms噪声测试软件介绍,LMS 振动噪声测试与分析系统.pdf
- windows8 初始界面和功能
- linux根据文件内容查找文件名,linux在当前目录下根据文件名查找文件
- error obtaining controller instance: failed to create NAT chain
- unity 打开项目路径无效_怎么打开已有的unity工程文件?如何打开一个已有的unity3d游戏工程啊?...
- ACWing n-皇后问题
- 程序员面试金典-刷题笔记
- http://www.vgm8.com/Search.asp?key=%B6%F1%C4%A7%B3%C7
- python读取.tsv文件例子(大文件处理)
- php 点餐系统 毕业设计,php毕业设计_基于php的校园餐厅网上订餐系统
热门文章
- 中继器是什么计算机网络,中继器是什么
- 【单片机】2.9 看门狗定时器(WDT)功能简介
- win10电脑风扇一直转解决方法
- Video Understanding(2)——Temporal Action Detection时序动作检测
- 优秀java程序员必须具备的技术技能
- Studio One5中文电脑音乐制作宿主软件保卫萝卜
- CSS精灵优化Retina显示屏下的网站图像
- python django的查询语句
- html 分号的作用,分号的作用是什么
- es文件无法找到局域网服务器,手机ES文件管理器局域网连接电脑WIN10,访问电脑文件...