You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tilda贷款计算器脚本修复:monthCredit未定义错误

修复Tilda贷款月供计算器的变量未定义错误

问题描述

在Tilda网站构建器中开发贷款月供计算脚本,需求为:贷款期限≤4个月时不收取利息,计算结果需显示在指向#msum和#ovsum的链接中。但添加免息逻辑后,出现monthCredit未定义的错误。

错误原因

原代码中,monthCredit和overCredit变量是在if/else代码块内部通过let声明的,属于块级作用域,在代码块外部(后续的结果处理和DOM赋值部分)无法访问这些变量,因此触发未定义错误。

修复后的代码

<!-- Tilda ZeroBlock贷款等额本息计算器 -->
<script src="https://static.tildacdn.com/js/jquery-1.10.2.min.js" charset="utf-8" onerror="this.loaderr='y';"></script>
<style>
    a[href="#msum"] , a[href="#ovsum"] {pointer-events:none;}
</style>
<script>
    $( document ).ready(function() {
    // 利率值    
    var percent = 10;
    $(".tn-atom__form").on('input', ".t-range", function() {
        setTimeout(function(){
             let summa = $('input[name="summa"]').next('.t-range__value-txt').html();
             let srok = $('input[name="srok"]').next('.t-range__value-txt').html();
             let monthPercent = percent/100/12;
             // 计算幂次
             let degree = Math.pow( 1+monthPercent , -srok);
             // 提前在块级作用域外声明变量
             let monthCredit, overCredit;
             if (srok <= 4) {
                 monthCredit = summa/srok;
                 overCredit = 0;
             } else {
                 monthCredit = summa*(monthPercent/(1-degree));
                 overCredit = monthCredit*srok - summa;
             }
             // 处理结果格式并输出
             monthCredit = monthCredit.toFixed();
             overCredit = overCredit.toFixed();
             monthCredit = monthCredit.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ');
             overCredit = overCredit.replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1 ');     
             $('a[href="#msum"]').html(monthCredit+' руб.');
             $('a[href="#ovsum"]').html(overCredit+' руб.');
        }, 100);
    });
});
</script>

关键修复点

  • 将monthCredit和overCredit变量的声明移至if/else代码块外部,确保后续代码可以访问到这两个变量
  • 修正了原代码中overCredit =0和overCredit = monthCredit*srok-summa缺少分号的语法问题

内容的提问来源于stack exchange,提问作者Andrey SW

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 02:37:15