Javascript 回调返回未捕获的TypeError:回调不是函数

Javascript 回调返回未捕获的TypeError:回调不是函数,javascript,jquery,callback,Javascript,Jquery,Callback,背景信息 我正在制作一个应用程序,通过AJAX调用从数据中获取数据。如果success方法满足要求,它将调用函数并将回调参数作为参数传递。然后在for循环中调用回调 问题 无论何时调用回调函数,它都会抛出错误uncaughttypeerror:callback不是函数(第39行) 我已查找并尝试的来源 首先,我要说,我已经对回调参数执行了console.log(),并且该值是正确的 我的代码 “setcheckbox”是一个字符串而不是回调,它是一个函数fyiTry:bibleQuery

背景信息

我正在制作一个应用程序,通过AJAX调用从数据中获取数据。如果success方法满足要求,它将调用函数并将回调参数作为参数传递。然后在for循环中调用回调

问题

无论何时调用回调函数,它都会抛出错误uncaughttypeerror:callback不是函数(第39行)

我已查找并尝试的来源

首先,我要说,我已经对回调参数执行了
console.log()
,并且该值是正确的

我的代码


“setcheckbox”
是一个字符串而不是回调,它是一个函数fyiTry:
bibleQuery(“,“getB”,setcheckbox)。我想这是在中国编程的副作用PHP@ibrahimmahrir我想指出上面的评论“是字符串而不是回调”。它仍然抛出相同的错误,即使没有引号。那么,您确定存在一个名为
setCheckboxes
的函数吗?@ibrahimmahrir我无意中保留了旧名称。感谢您指出这一点,我们进行了编辑,这样将来人们就不会认为我调用了错误的函数。bibleQuery变成了查询。我在这里做了一个错误的复制粘贴(我对它进行了最初的评论,并在发布时删除了正确的函数调用)。但你的评论仍然正确。请随意编辑注释,将“bibleQuery”改为“Query”,因为这是一条有效的注释:)
function Query(eventObject, button, callback)
{
        //replaced not relevant code here with a comment.
        success: function(response) 
        {
            if (button === "getB")
            {
                //success fetches correctly. Already checked whether response could be empty. This is not the case
                response = JSON.parse(response);
                if (callback)
                {
                    //pass the callback along
                    rollOut(response, callback);
                }
            }
        }
}
//THE FUNCTION I AM TRYING TO INVOKE
function setCheckboxes(valueToCompare)
{
    console.log(valueToCompare);
}

function rollOut(jsonResponse, callback)
{
    $(`.show-divSet`).on(`click`, function () {
        for (let i = 0; i < jsonResponse.length; i++)
        {
            if (jsonResponse[i]["version"] !== "")
            {
                //CONSOLE SHOWS ME THE CORRECT VALUE
                console.log(callback);
                //THIS IS LINE 39. THIS IS WHERE THE ERROR IS THROWN
                callback(jsonResponse[i]["version"]);
            }
        }
    });
}
$(function () {
    // I have already tried setCheckboxes WITHOUT quotes, but unfortunately this didn't work either
    Query("", "getB", "setCheckboxes");
});