javascript版的等额本息计算器

26 篇文章 0 订阅
14 篇文章 0 订阅

首先讲一下等额本息的概念:

等额本息本金固定,每月需要偿还当前未偿还本金产生的利息,以及月还款额减掉本月利息之后的差,此部分属于本金部分,偿还后即在本金内扣除。

等额本月还款额计算公式:每月还款额 = 总贷款额 X 月利率 X ( 1+月利率 ) ^ 还款期数 / ( ( 1+月利率 ) ^ 还款期数 -1 )

等额本月还利息计算公式:每月还款利息 = 未还总本金数*月利率

等额本月还本金计算公式:每月还款本金=每月还款额-每月还款利息

下面是javascript代码,复制到html文件内,在浏览器打开即可使用:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="http://thcs365.com/qrcode/jquery.min.js"></script>
    <style>
        table{
            border-right: 1px solid #804040;
            border-bottom: 1px solid #804040;
            border-collapse:collapse;
        }
        table th {
            border-left: 1px solid #804040;
            border-top: 1px solid #804040;
        }
        table td {
            border-left: 1px solid #804040;
            border-top: 1px solid #804040;
        }
    </style>
</head>
<body class="su">
    <table class="suning" id="suning">
        <tr>
            <th>贷款本金</th>
            <th><input type="text" name="ben"/></th>
            <th>还款期数</th>
            <th><input type="text" name="qi"/></th>
            <th>月利率‰</th>
            <th><input type="text" name="lv"/></th>
        </tr>
        <tr>
            <td>还款期</td>
            <td>还款起始日期</td>
            <td>月还利息</td>
            <td>月还本金</td>
            <td>月还换款额</td>
            <td>剩余本金</td>
        </tr>
    </table>
    <input type="button" value="点击计算" suning="jisuanqi"/>
<script>
$(function(){
    $("[suning]").click(function(){
        //条件
        // var ben = 300000;
        // var qi = 12;
        // var lv = 0.0075;
        var ben = parseInt($('input[name="ben"]').val());
        var qi = parseInt($('input[name="qi"]').val());
        var lv = ($('input[name="lv"]').val()/1000);
        //总息
        /*
            总利息 = 总贷款额 X 月利率 X ( 还款期数 - 1 ) /2
        */
        var zongxi = ben * lv * (qi -1) /2;
        //document.write("总息:"+zongxi);
        //每月还款额
        /*
            每月还款额 = 总贷款额 X 月利率 X ( 1+月利率 ) ^ 还款期数 / ( ( 1+月利率 ) ^ 还款期数 -1 )
        */
        var moon = (ben * lv * Math.pow( (1+lv),qi) ) / ( Math.pow( (1+lv),qi ) -1);
        //document.write("<br/>");
        //document.write("每月还款额:"+moon);
        //以还本金
        var yi_ben = 0;
        var z_xi=0;
        for(var i = 1;i<(qi+1);i++){
            //本月还的利息
            var moon_xi = (ben - yi_ben) * lv;
            z_xi += moon_xi;
            //本月还的本金
            var moon_ben = moon-moon_xi;
            yi_ben +=  moon_ben;
            var sheng_ben = ben - yi_ben;
            var html = "<tr><td>"+i+"</td><td></td><td>¥:"+moon_xi+"</td><td>¥:"+moon_ben+"</td><td>¥:"+moon+"</td><td>¥:"+sheng_ben+"</td></tr>";
            $(".suning").append(html);
        }
        $(".su").append("<br/>");
        $(".su").append("总利息:"+z_xi+",利息累加结果");
        $(".su").append("<br/>");
        $(".su").append("总利息:"+zongxi+",公式计算结果,差异明显");
    });
})
</script>
</body>
</html>

       




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值