为什么变量 num 拼接日期时会变成 NaN?

为什么变量 num 拼接日期时会变成 NaN?

变量 num 不能成功的原因

在所提供的代码中,变量 num 被初始化为 0。但当它被用来拼接日期时,如下面的代码行所示:

html += '<tr class="title"><th colspan="7">' + year + '年' + m + ' 月</th></tr>';

此时,num 为 0,导致拼接结果为 NaN,无法正确显示日期。

解决方案

要解决这个问题,需要确保在拼接日期之前,num 的值已更新。这可以通过在每次点击按钮时调用 add_month 函数来实现,该函数负责更新 num 的值。

修改后的代码如下所示:

function add_month(callback) {
    var num_next = 0;
    $('.add_cla').click(function () {
        callback(num_next++);
    })
}
var num = add_month(n => {
    // 执行拼接日期的代码,使用更新后的 num 值
    for (m = month_now + 1; m <= month_now + 1; m++) {
        // 拼接每个月份的表格
        ...
    }
    document.write(html);
});

通过在每次点击按钮时调用 add_month 函数,确保 num 的值始终是最新的,从而正确拼接日期。

以上就是为什么变量 num 拼接日期时会变成 NaN?的详细内容,更多请关注其它相关文章!