可能吗?无论如何,在Javascript或jQuery中.
例如: $.isFunction($.isFunction());
Upd:但是如何检查jQuery插件的方法?有时它在调用时没有准备好并产生错误.例:$.isFunction($().jqGrid.format)
要将函数传递给另一个函数,请()关闭:
$.isFunction($.isFunction); // true!
Run Code Online (Sandbox Code Playgroud)
当你编写时,()你正在调用该函数,并使用它返回的结果.$.isFunction()没有参数返回false(因为undefined不是函数),所以你说$.isFunction(false),当然也是false.
我不会isFunction仅仅为了检查某些东西的存在而烦恼,除非你怀疑有人因某种原因可能已经为它分配了一个非功能值.对于纯存在检查,请使用in运算符:
if ('isFunction' in $) { ...
Run Code Online (Sandbox Code Playgroud)
是的,
jQuery.fn.exists = function(){return jQuery(this).length>0;}
if ($(selector).exists()) {
// code........
}
Run Code Online (Sandbox Code Playgroud)