JSFiddle - React, Tailwind, and code Playground
by sandro_paganotti
JavaScript
Function.prototype.proxyEnabled = function(){
var original = this;
return function(){
var args = Array.prototype.slice.call(arguments);
var fnToCall = this[original.name + this.proxy];
return (typeof fnToCall === 'function' ? fnToCall : original).apply(this, args);
};
};
Obj = function(){};
Obj.prototype = {
fn1: function fn1(){ return 'hello!'; }.proxyEnabled(),
fn1else: function(){ return 'hi!!'; }
}
var obj = new Obj();
console.log(obj.fn1());
obj.proxy = 'else';
console.log(obj.fn1());