I think that naming your functions is a way to have your programs document themselves.
So often naming is the hardest part, but by coming up with a concise name for a function, you are forcing yourself to think "What am I trying to accomplish here".
Instead of
setTimeout(function() {}),1000)
It's more self-documenting if the program is written as:
setTimeout(myFunction,1000)
function myFunction() {}
In addition, I think it's a little more clear, particularly with callbacks that the function is going to be called at a later time, even though you are defining it right here, right now.