jQuery isFunction检查错误“函数未定义”

前端之家收集整理的这篇文章主要介绍了jQuery isFunction检查错误“函数未定义”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想检查一个函数是否存在,然后再尝试运行它。这里是我的代码
if ($.isFunction(myfunc())) {
    console.log("function exist,run it!!!");
}

但是,当函数不可用时,我得到错误

myfunc is not defined

如何进行检测?这里是我的工作测试:http://jsfiddle.net/3m3Y3/

解决方法

通过将()放在函数名后面,你实际上试图在第一行中运行它。

相反,你应该使用函数名而不运行它:

if ($.isFunction(myfunc)) {

但是 – 如果myfunc不是一个函数,并且不是任何其他定义的变量,这仍然会返回一个错误,虽然一个不同的。像myfunc的东西没有定义。

你应该检查名称是否存在,然后检查它是一个函数,如下所示:

if (typeof myfunc !== 'undefined' && $.isFunction(myfunc)) {

工作示例:http://jsfiddle.net/sXV6w/

猜你在找的jQuery相关文章