jQuery plugins use a pattern like this to hide private functions of a plugin:
(function ($) {
    var a_private_function = function (opts) {
        opts.onStart();
    }
    $.fn.name_of_plugin = function (options) {
        a_private_function(opts);
    }
})(jQuery);
jQuery then makes those fn functions available like this:
some_callback = function() {};
jQuery('selector').name_of_plugin( { onStart: some_callback } );
Now I'd like to override a_private_function. Is there any way I can access it without patching the actual plugin code?
I thought maybe I could access the execution context of the private function by using caller but that did not work:
some_callback = function() {
    console.log(some_callback.caller.a_private_function); // -> undefined
};
jQuery('selector').name_of_plugin( { onStart: some_callback } );
 
     
     
     
    