javascript - 传递函数时不是函数错误

时间:2017-09-25 20:27:55

标签: javascript

我在以下代码段中收到Uncaught TypeError: success is not a function

waitFor(document.getElementsByClassName('class'), validate);

function waitFor(element, success) {
    if (element == null || element.length == 0) {
        setTimeout(function() { waitFor(element); }, 100);
    } else {
        success(element);
    }
}

function validate(element) {
    //do stuff
}

我的问题是为什么我收到此错误?验证功能在下面正确定义。我将它作为waitFor函数的参数传递,而不是在waitFor中未定义成功。我按照这个答案在javascript中传递函数作为参数:https://stackoverflow.com/a/13286241/5449709

我错过了什么?

1 个答案:

答案 0 :(得分:1)

当你打电话时

setTimeout(function() { waitFor(element); }, 100);

成功未定义,因此可能会抛出错误