setInterval

时间:2016-11-18 19:50:35

标签: javascript setinterval

我在MVC应用程序中有一个页面,它使用setInterval来触发JavaScript函数,并按名称调用它。有几个按钮和链接,当用户单击它们时,它们会对数据库进行ajax调用。不仅如此,它还会清除间隔并设置另一个要运行的功能(每个按钮和链接都有自己的功能)。这不能正常运行,我需要找出setInterval运行的函数的名称。调试器给了我ID,但这不是很有用。我是否可以看到函数的名称,仅用于调试目的?

以下是我的代码的简化版本:

var Abc = Abc || {

    myInterval: '',
    refreshTime: 120000,

    init: function () {
        $("#button1").click(function () {
            Abc.function1();
            clearInterval(Abc.myInterval);
            Abc.myInterval = setInterval(Abc.function1, Abc.refreshTime);
        });
        $("#button2").click(function () {  
            Abc.function2();
            clearInterval(Abc.myInterval);
            Abc.myInterval = setInterval(Abc.function2, Abc.refreshTime);  
        });
    },

    function1: function () {
        $.ajax({
            // Code
        });
    },
    function2: function () {
        $.ajax({
            // Code
        });
    },
}

我需要的是function1function2 ...

谢谢!

2 个答案:

答案 0 :(得分:3)

您可以使用命名函数,例如

function1: function function1() {
//                  ^^^^^^^^^
    $.ajax({
        // Code
    });
},

答案 1 :(得分:0)

您可以将此行添加到每个功能中:

console.info('<functionname> is running');

当然,您将替换为该函数的名称。