Hola a todos.
estoy tratando de aprender a desarrollar aplicaciones desde el servidor con Node.js, y he visto que uno de los fundamentos para poder hacer esto apropiadamente, es cada vez que se pueda o sea necesario, declarar las funciones a modo de callback. He conseguido hacer lo que he querido por medio de esto, sin embargo, en el aspecto lógico no logro entenderlo del todo y esto no me gusta...
Pondré un ejemplo:
var content;
fs.readFile('./Index.html', function read(err, data)
{
if (err)
{
throw err;
}
content = data;
});
console.log(content);
Entiendo perfectamente que estamos pasando una función (read) como parámetro de otra función (readFile), y que read se ejecuta al llamar esta última, lo que no logro entender, es en qué parte del código el programa sabe que data es igual a './Index.html'. Tampoco veo cómo hace para saber nuestro programa que err se refiere a un estado de error en la lectura del fichero, si son funciones que nosotros mismos declaramos.
Les agradezco cualquier explicación al respecto.