Вопрос в том, в каком контексте вы хотите создать эту функцию.Если вы действительно хотите создать глобальную функцию с таким именем, сделайте это так:
function setFunc( setName ) {
this[ setName ] = function() {
alert('I am ' + setName);
};
}
setFunc('totop');
Однако, это не очень хорошая идея, чтобы заглушить глобальный объект подобным образом.Кроме того, приведенный выше код сломается в строгом режиме es5.Однако, используя ключевое слово new
, вы можете создать такие конструкции, как
new setFunc('foobar').foobar();
или просто сохранить результат в переменной
var myObj = new setFunc('BoyohboyWhatALongString');
console.log( myObj ); // BoyohboyWhatALongString() is in there now