Adicione dinamicamente propriedades ao objeto de protótipo

Eu queria saber a melhor maneira de adicionar dinamicamente propriedades para o objeto de protótipo de uma função (ou se é mesmo uma boa idéia).

Isso é o que eu criei:

['foo', 'bar'].forEach(function(method) {
    String.prototype[method] = resolve;
});

function resolve() {
    // Who the hell called me?
}

'str'.foo();

Eu estou chamando a mesma funçãoresolve() para todas as novas propriedades que adicionei e preciso verificar quem chamou a função (qual nome de propriedade) para definir uma implementação com base nessas informações. É tudo uma questão de curiosidade, estou fazendo alguns testes em implementações de API JavaScript loucas.

Vocês tem alguma sugestão para isso?

questionAnswers(1)

yourAnswerToTheQuestion