I want to write a javascript function that can flexibly add parameter. For detail, I want to encapsulate the singalR invoke function like below, but how should handle the parameter?
 e.g. I want to call like this var proxy = initSignalr();
proxy.invoke('Login',name, pw, fn), 
how should I adjust below code so I can make it flexible to add parameters.(e.g. maybe I also need to call proxy.invoke('sendMessage',message, fn) )  
function initSignalr(){
  var connection = $.hubConnection('http://xxxxxxx');
  var proxy = connection.createHubProxy('xxxxxxx');
  connection.start().done(function(){
    console.log("signalr connected");
  });
  return {
    on: function (eventName, callback) {
          proxy.on(eventName, function (result) {
            $rootScope.$apply(function () {
              if (callback) {
                callback(result);
              }
             });
           });
         },
    invoke: function (methodName, callback) {
          proxy.invoke(methodName)
          .done(function (result) {
            $rootScope.$apply(function () {
              if (callback) {
                callback(result);
              }
            });
          });
        }
    };}
 
    