📄 interest.js
字号:
//定义利率
rateArray = new Array;
//2004年之前的旧利率
rateArray[1] = new Array;
rateArray[1][1] = new Array;
rateArray[1][2] = new Array;
rateArray[1][1][5] = 0.0477;//商贷 1~5年 4.77%
rateArray[1][1][10] = 0.0504;//商贷 5-30年 5.04%
rateArray[1][2][5] = 0.0360;//公积金 1~5年 3.60%
rateArray[1][2][10] = 0.0405;//公积金 5-30年 4.05%
//2005年 1月的新利率
rateArray[2] = new Array;
rateArray[2][1] = new Array;
rateArray[2][2] = new Array;
rateArray[2][1][5] = 0.0495;//商贷 1~5年 4.95%
rateArray[2][1][10] = 0.0531;//商贷 5-30年 5.31%
rateArray[2][2][5] = 0.0378;//公积金 1~5年 3.78%
rateArray[2][2][10] = 0.0423;//公积金 5-30年 4.23%
//2006年 1月的新利率下限
rateArray[3] = new Array;
rateArray[3][1] = new Array;
rateArray[3][2] = new Array;
rateArray[3][1][5] = 0.0527;//商贷 1~5年 5.27%
rateArray[3][1][10] = 0.0551;//商贷 5-30年 5.51%
rateArray[3][2][5] = 0.0396;//公积金 1~5年 3.96%
rateArray[3][2][10] = 0.0441;//公积金 5-30年 4.41%
//2006年 1月的新利率上限
rateArray[4] = new Array;
rateArray[4][1] = new Array;
rateArray[4][2] = new Array;
rateArray[4][1][5] = 0.0527;//商贷 1~5年 5.27%
rateArray[4][1][10] = 0.0612;//商贷 5-30年 6.12%
rateArray[4][2][5] = 0.0396;//公积金 1~5年 3.96%
rateArray[4][2][10] = 0.0441;//公积金 5-30年 4.41%
//2006年 4月28日的新利率下限
rateArray[5] = new Array;
rateArray[5][1] = new Array;
rateArray[5][2] = new Array;
rateArray[5][1][5] = 0.0551;//商贷 1~5年 5.51%
rateArray[5][1][10] = 0.0575;//商贷 5-30年 5.75%
rateArray[5][2][5] = 0.0414;//公积金 1~5年 4.14%
rateArray[5][2][10] = 0.0459;//公积金 5-30年 4.59%
//2006年 4月28日的新利率上限
rateArray[6] = new Array;
rateArray[6][1] = new Array;
rateArray[6][2] = new Array;
rateArray[6][1][5] = 0.0612;//商贷 1~5年 6.12%
rateArray[6][1][10] = 0.0639;//商贷 5-30年 6.39%
rateArray[6][2][5] = 0.0414;//公积金 1~5年 4.14%
rateArray[6][2][10] = 0.0459;//公积金 5-30年 4.59%
//2006年 8月19日的新利率下限
rateArray[7] = new Array;
rateArray[7][1] = new Array;
rateArray[7][2] = new Array;
rateArray[7][1][5] = 0.0551;//商贷 1~5年 5.51%
rateArray[7][1][10] = 0.0581;//商贷 5-30年 5.81%
rateArray[7][2][5] = 0.0414;//公积金 1~5年 4.14%
rateArray[7][2][10] = 0.0459;//公积金 5-30年 4.59%
//2006年 8月19日的新利率上限
rateArray[8] = new Array;
rateArray[8][1] = new Array;
rateArray[8][2] = new Array;
rateArray[8][1][5] = 0.0648;//商贷 1~5年 6.48%
rateArray[8][1][10] = 0.0684;//商贷 5-30年 6.84%
rateArray[8][2][5] = 0.0414;//公积金 1~5年 4.14%
rateArray[8][2][10] = 0.0459;//公积金 5-30年 4.59%
//2007年 3月18日的新利率下限
rateArray[9] = new Array;
rateArray[9][1] = new Array;
rateArray[9][2] = new Array;
rateArray[9][1][5] = 0.0574;//商贷 1~5年 5.74%
rateArray[9][1][10] = 0.0604;//商贷 5-30年 6.04%
rateArray[9][2][5] = 0.0432;//公积金 1~5年 4.32%
rateArray[9][2][10] = 0.0477;//公积金 5-30年 4.77%
//2007年 3月18日的新利率上限
rateArray[10] = new Array;
rateArray[10][1] = new Array;
rateArray[10][2] = new Array;
rateArray[10][1][5] = 0.0675;//商贷 1~5年 6.75%
rateArray[10][1][10] = 0.0711;//商贷 5-30年 7.11%
rateArray[10][2][5] = 0.0432;//公积金 1~5年 4.32%
rateArray[10][2][10] = 0.0477;//公积金 5-30年 4.77%
//2007年 5月19日的新利率下限
rateArray[11] = new Array;
rateArray[11][1] = new Array;
rateArray[11][2] = new Array;
rateArray[11][1][5] = 0.0589;//商贷 1~5年 5.89%
rateArray[11][1][10] = 0.0612;//商贷 5-30年 6.12%
rateArray[11][2][5] = 0.0441;//公积金 1~5年 4.41%%
rateArray[11][2][10] = 0.0486;//公积金 5-30年 4.86%%
//2007年 5月19日的新利率上限
rateArray[12] = new Array;
rateArray[12][1] = new Array;
rateArray[12][2] = new Array;
rateArray[12][1][5] = 0.0693;//商贷 1~5年 6.93%
rateArray[12][1][10] = 0.0720;//商贷 5-30年 7.20%
rateArray[12][2][5] = 0.0441;//公积金 1~5年 4.41%%
rateArray[12][2][10] = 0.0486;//公积金 5-30年 4.86%%
//2007年 7月21日的新利率下限
rateArray[13] = new Array;
rateArray[13][1] = new Array;
rateArray[13][2] = new Array;
rateArray[13][1][5] = 0.0612;//商贷 1~5年 6.12%
rateArray[13][1][10] = 0.06273;//商贷 5-30年 6.273%
rateArray[13][2][5] = 0.0450;//公积金 1~5年 4.50%%
rateArray[13][2][10] = 0.0495;//公积金 5-30年 4.95%%
//2007年 7月21日的新利率上限
rateArray[14] = new Array;
rateArray[14][1] = new Array;
rateArray[14][2] = new Array;
rateArray[14][1][5] = 0.0720;//商贷 1~5年 7.20%
rateArray[14][1][10] = 0.0738;//商贷 5-30年 7.38%
rateArray[14][2][5] = 0.0450;//公积金 1~5年 4.50%%
rateArray[14][2][10] = 0.0495;//公积金 5-30年 4.95%%
//2007年 8月22日的新利率下限
rateArray[15] = new Array;
rateArray[15][1] = new Array;
rateArray[15][2] = new Array;
rateArray[15][1][5] = 0.06273;//商贷 1~5年 6.273%
rateArray[15][1][10] = 0.06426;//商贷 5-30年 6.426%
rateArray[15][2][5] = 0.0459;//公积金 1~5年 4.59%
rateArray[15][2][10] = 0.0504;//公积金 5-30年 5.04%
//2007年 8月22日的新利率上限
rateArray[16] = new Array;
rateArray[16][1] = new Array;
rateArray[16][2] = new Array;
rateArray[16][1][5] = 0.0738;//商贷 1~5年 7.38%
rateArray[16][1][10] = 0.0756;//商贷 5-30年 7.56%
rateArray[16][2][5] = 0.0459;//公积金 1~5年 4.59%
rateArray[16][2][10] = 0.0504;//公积金 5-30年 5.04%
//2007年 9月15日的新利率下限
rateArray[17] = new Array;
rateArray[17][1] = new Array;
rateArray[17][2] = new Array;
rateArray[17][1][5] = 0.06503;//商贷 1~5年 6.503%
rateArray[17][1][10] = 0.06656;//商贷 5-30年 6.656%
rateArray[17][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[17][2][10] = 0.0522;//公积金 5-30年 5.22%
//2007年 9月15日的新利率上限
rateArray[18] = new Array;
rateArray[18][1] = new Array;
rateArray[18][2] = new Array;
rateArray[18][1][5] = 0.0765;//商贷 1~5年 7.65%
rateArray[18][1][10] = 0.0783;//商贷 5-30年 7.83%
rateArray[18][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[18][2][10] = 0.0522;//公积金 5-30年 5.22%
//2007年 9月15日新利率(第二套房)
rateArray[19] = new Array;
rateArray[19][1] = new Array;
rateArray[19][2] = new Array;
rateArray[19][1][5] = 0.08415;//商贷 1~5年 8.415%
rateArray[19][1][10] = 0.08613;//商贷 5-30年 8.613%
rateArray[19][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[19][2][10] = 0.0522;//公积金 5-30年 5.22%
//2007年 12月21日的新利率下限
rateArray[20] = new Array;
rateArray[20][1] = new Array;
rateArray[20][2] = new Array;
rateArray[20][1][5] = 0.06579;//商贷 1~5年 6.579%
rateArray[20][1][10] = 0.06656;//商贷 5-30年 6.656%
rateArray[20][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[20][2][10] = 0.0522;//公积金 5-30年 5.22%
//2007年 12月21日的新利率上限
rateArray[21] = new Array;
rateArray[21][1] = new Array;
rateArray[21][2] = new Array;
rateArray[21][1][5] = 0.0774;//商贷 1~5年 7.74%
rateArray[21][1][10] = 0.0783;//商贷 5-30年 7.83%
rateArray[21][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[21][2][10] = 0.0522;//公积金 5-30年 5.22%
//2007年 12月21日新利率(第二套房)
rateArray[22] = new Array;
rateArray[22][1] = new Array;
rateArray[22][2] = new Array;
rateArray[22][1][5] = 0.08514;//商贷 1~5年 8.514%
rateArray[22][1][10] = 0.08613;//商贷 5-30年 8.613%
rateArray[22][2][5] = 0.0477;//公积金 1~5年 4.77%
rateArray[22][2][10] = 0.0522;//公积金 5-30年 5.22%
//得到利率
function fGetRateData(lilv_class,type,years){
var lilv_class = parseInt(lilv_class);
if (years<=5){
return rateArray[lilv_class][type][5];
}else{
return rateArray[lilv_class][type][10];
}
}
//本金还款的月还款额(参数: 年利率 / 贷款总额 / 贷款总月份 / 贷款当前月0~length-1)
function fGetMonthMoney2(lilv,total,month,cur_month){
var lilv_month = lilv / 12;//月利率
//return total * lilv_month * Math.pow(1 + lilv_month, month) / ( Math.pow(1 + lilv_month, month) -1 );
var benjin_money = total/month;
return (total - benjin_money * cur_month) * lilv_month + benjin_money;
}
//本息还款的月还款额(参数: 年利率/贷款总额/贷款总月份)
function fGetMonthMoney1(lilv,total,month){
var lilv_month = lilv / 12;//月利率
return total * lilv_month * Math.pow(1 + lilv_month, month) / ( Math.pow(1 + lilv_month, month) -1 );
}
/**
* 获取贷款类别
*/
function fChooseType(){
var type = $("type").value;
if(type == 3){
$("accfundsTr").style.display = $("businessTr").style.display = "";
$("loansTr").style.display = "none";
}else{
$("accfundsTr").style.display = $("businessTr").style.display = "none";
$("loansTr").style.display = "";
}
fChangeRate();
}
/**
* 获取并设置利率
*/
function fChangeRate(){
var ratetype = $("ratetype").value;
var type = $("type").value;
var years = $("years").value;
if(type ==3){
var businessRate = fGetRateData(ratetype,1, years);//得到商贷利率
var accfundsRate = fGetRateData(ratetype,2, years);//得到公积金利率
$("businessRate").value = businessRate;
$("accfundsRate").value = accfundsRate;
return;
}else{
var rate = fGetRate(ratetype,type,years);
$("rate").value = rate;
}
}
/**
* 获取利率
* @param {number} ratetype 不同事情的利率
* @param {number} type 贷款类型,1商业贷款,2公积金贷款
* @param {number} years 贷款年限
*/
function fGetRate(ratetype,type,years){
var ratetype = parseInt(ratetype);
if (years<=5){
return rateArray[ratetype][type][5];
}else{
return rateArray[ratetype][type][10];
}
}
/**
* 清空输入
*/
function fReset(){
$("business").value = $("accfunds").value = $("loans").value = "";
fChangeRate();
}
function fShowResult(resultObj){
if(resultObj.monthPay1){
$("monthPayTr1").style.display = "";
$("monthPayTr2").style.display = "none";
}else{
$("monthPayTr1").style.display = "none";
$("monthPayTr2").style.display = "";
}
for(var o in resultObj){
$(o).innerHTML = resultObj[o];
}
}
function fGetResult()
{
var years = $("years").value;
var month = years * 12;
var type = $("type").value;
var paytype = $("paytype").value;
var ratetype = $("ratetype").value;
var result = {};
result.monthSpan = month; // 支付月数
if (type == 3){ // 组合贷款
var businessRate = fGetRateData(ratetype,1, years);//得到商贷利率
var accfundsRate = fGetRateData(ratetype,2, years);//得到公积金利率
var business = $("business").value;
var accfunds = $("accfunds").value;
if(accfunds.trim() == ""){
alert("请输入公积金贷款金额");
$("accfunds").focus();
return false;
}else if(!accfunds.isNumber()){
alert("公积金贷款必须为数字");
$("accfunds").focus();
return false;
}else if(business.trim() == ""){
alert("请输入商业型贷款金额");
$("business").focus();
return false;
}else if(!business.isNumber()){
alert("商业型贷款必须为数字");
$("business").focus();
return false;
}
result.loansSpan = (parseInt(business) + parseInt(accfunds)); // 贷款总额
if(paytype == 1){ // 等额本息还款,月均还款
var monthMoney = fGetMonthMoney1(businessRate,business,month) + fGetMonthMoney1(accfundsRate,accfunds,month);//调用函数计算
result.monthPay1 = Math.round(monthMoney * 100)/100 ; // 月均还款额
result.totalPay = Math.round(monthMoney * month * 100)/100; // 还款总额
result.interest = Math.round((monthMoney * month - business - accfunds) *100)/100; // 支付利息款
}else{ // 等额本金还款,月还款
var totalPay = 0;
var monthMoney = "";
var tmp;
for(j=0;j<month;j++) {
//调用函数计算: 本金月还款额
tmp = fGetMonthMoney2(businessRate,business,month,j) + fGetMonthMoney2(accfundsRate,accfunds,month,j);
totalPay += tmp;
tmp = Math.round(tmp*100)/100;
monthMoney += (j+1) +"月," + tmp + "(元)<br/>";
}
result.monthPay2 = monthMoney ; // 月还款额
result.totalPay = Math.round(totalPay * 100)/100; // 还款总额
result.interest = Math.round((totalPay - business - accfunds) *100)/100; // 支付利息款
}
}else{ // 商业贷款或者公积金贷款
var rate = fGetRateData(ratetype,type, years); // 得到利率
var loans = $("loans").value; // 贷款总额
if(loans.trim() == ""){
alert("请输入贷款金额");
$("loans").focus();
return false;
}else if(!loans.isNumber()){
alert("贷款必须为数字");
$("loans").focus();
return false;
}
result.loansSpan = loans; // 贷款总额
if(paytype == 1){ // 等额本息还款,月均还款
var monthMoney = fGetMonthMoney1(rate,loans,month); // 调用函数计算
result.monthPay1 = Math.round(monthMoney*100)/100 ; // 月均还款额
result.totalPay = Math.round(monthMoney * month*100)/100; // 还款总额
result.interest = Math.round((monthMoney * month - loans) *100)/100; // 支付利息款
}else{ // 等额本金还款,月还款
var totalPay = 0;
var monthMoney = "";
var tmp;
for(j = 0; j < month; j++) {
tmp = fGetMonthMoney2(rate,loans,month,j);//调用函数计算: 本金月还款额
totalPay += tmp;
tmp = Math.round(tmp*100) / 100;
monthMoney += (j+1) +"月," + tmp + "(元)<br>";
}
result.monthPay2 = monthMoney; // 月还款额
result.totalPay = Math.round(totalPay*100)/100; // 还款总额
result.interest = Math.round((totalPay - loans) *100)/100; // 支付利息款
}
}
fShowResult(result);
$("resultDiv").style.display = "";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -