JSFiddle - React, Tailwind, and code Playground
HTML
<div id="d1"></div>
<div id="d2"></div>
<div id="d3"></div>
JavaScript
function addMethod(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);
};
}
function Users() {
addMethod(this, "add", function() {
document.getElementById('d1').innerHTML = 'sem parametros';
});
addMethod(this, "add", function(name) {
document.getElementById('d2').innerHTML = '1 parametro';
});
addMethod(this, "add", function(first, last) {
document.getElementById('d3').innerHTML = '2 parametros';
});
}
new Users().add();
new Users().add("1");
new Users().add("1", "2");