На самом деле классика случая анонимной+замыкание:
var name="admin"
setTimeout(function(){
alert(name);
},1000);
А анонимная функция без имени, а без имени она потому что ее вызывают не по имени, а по ссылке на нее.
т.е полный пример с замыканием:
function sayAfter(text,delay){
setTimeout(function(){
alert(text);
},delay);
}
sayAfter("lol",1000);
Аудитория требует более тонкого примера применения...
(function(){
var x, y, z;
//много разного кода, много переменных, которые не нужны в глобальной области видимости
})();