JSFiddle - React, Tailwind, and code Playground
by lbstr
JavaScript
var addMethod = function(object, name, fn) {
var old = object[name];
object[name] = function(){
if (fn.length === arguments.length) {
return fn.apply(this, arguments);
}
else if (typeof old === "function") {
return old.apply(this, arguments);
}
};
};
var o = {};
addMethod(o, "foo", function(){
console.log('no arguments');
});
addMethod(o, "foo", function(arg){
console.log('one argument: ' + arg);
});
addMethod(o, "foo", function(a, b){
console.log('two arguments: ' + a + ' and ' + b);
});
o.foo();
o.foo(42);
o.foo("cake", "candy");