Изначально наверно имелось в виду имя метода а не имя функции. И скорее всего для того что бы иметь возможность перегрузить этот метод это вроде как зеркалированием называется т.е.
var Obj = {};
Obj.methodName = function functionName (){ retutn Obj }
К сожалению внутри functionName() довольно сложно получить Obj.methodName
А возможность перегружать методы весьма и весьма полезная штука
Ну например есть желание последовательно выполнять кучу анимаций ..
Обычно бля этого используют функции обратного вызова т.е.
Element.moveLefr ({
speed:10;
time: 1000;
success : function (e){
e.moveAp ({
speed:10;
time: 1000;
success : function (e){
....... //( и.т.д и.т.п )
}
})
}})
Но если есть возможность перегрузить функции moveLefr и moveAp можно писать проще
Element.moveLefr(10,1000).moveLefr(30,2000) // и.т.д.
Для этого требуется что бы moveLefr() не выполняла анимацию а просто запомнила свое имя и правильно разместила себя в очереди анимации и вернула объект у которого есть метод moveLefr() т.е. вернула родительский объект у которого определены все методы