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.