JSFiddle - React, Tailwind, and code Playground

JavaScript

Function.prototype.applyNamed = function (e, v) {
    console.log(v);    
    var args = doSomething.toString().match (/function\s+\w*\s*\((.*?)\)/)[1].split (/\s*,\s*/);
    console.log(args);   
    if(args.length === 0) 
        return;
    for(var i=0; i<args.length; i++){
        var argName = args[i];
        var argValue = v[argName];              
        console.log(argName + ' = ' + argValue);
    }
}

function doSomething(uno, dos, tres) {    
    console.log('uno = ' + uno);
    console.log('dos = ' + dos);
    console.log('tres = ' + tres);
}

var namedArgs = {
    dos: 'foo',
    tres: 'bar',
    uno: 'baz'
};

doSomething.applyNamed(this, namedArgs);