任何人都知道测试变量以查看它是否是 jQuery.Callbacks 类型的对象的简单方法。
背景:我已经创建了一些 jquery 小部件,它们每个都有使用 jQuery.Callbacks 管理的事件。我的一些小部件使用其他小部件,并将给自己的配置传递给子小部件,这包括事件。因此,如果我的父小部件初始化一个事件,我不希望子小部件再次初始化它,否则我将失去任何现有的订阅。
例如:
var notCallbackHandler1='';
var notCallbackHandler2={ add: function(something) { } };
var callbackHandler=$.Callbacks();
function isVariableACallbackHandler(variable) {
// <-- What goes here?
}
isVariableACallbackHandler(notCallbackHandler1); // Should return false
isVariableACallbackHandler(notCallbackHandler2); // Should return false
isVariableACallbackHandler(callbackHandler); // Should return true