Supongo que te puede ilustrar este ejemplo:
   Código PHP:
    <script>
function e(q,noBr) {
    document.body.appendChild( document.createTextNode(q) );
    if(!noBr) document.body.appendChild( document.createElement("BR") );
}
var pepe="hola";
var pepa="adios";
try {
    e(pepe);
    e(paco);
    e(pepa);
} catch(error) {
    e("ERROR!");
    for(var i in error)
        e("error['"+i+"'] --> "+error[i]);
}
</script> 
   
  Salida: 
 Cita:  hola
ERROR!
error['message'] --> paco is not defined
error['fileName'] --> file:///C:/DOCUME~1/DERKEN~1/CONFIG~1/Temp/non2.htm
error['lineNumber'] --> 23
error['stack'] --> @file:///C:/DOCUME~1/DERKEN~1/CONFIG~1/Temp/non2.htm:23
error['name'] --> ReferenceError
    
Igual que con variables se podrá hacer con funciones porque una función no deja de ser una variable de nombre el nombre de esa función.   
Un saludo.