我在以下代码段中收到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
我错过了什么?
答案 0 :(得分:1)
当你打电话时
setTimeout(function() { waitFor(element); }, 100);
成功未定义,因此可能会抛出错误