Curso javascript nivel medio
En JavaScript, no solo puedes pasar valores simples como números o cadenas de texto a una función, sino también objetos y funciones. Esto te permite crear funciones muy poderosas y flexibles.
Paso de Objetos como Parámetros
Cuando pasas un objeto como parámetro a una función, la función recibe una referencia al objeto, no una copia. Esto significa que cualquier cambio que hagas al objeto dentro de la función afectará al objeto original.
Ejemplo de paso de objetos como parámetros:
1function actualizarNombre(persona, nuevoNombre) { 2 persona.nombre = nuevoNombre; 3} 4 5let usuario = { nombre: "Ana", edad: 25 }; 6console.log(usuario.nombre); // Muestra "Ana" 7 8actualizarNombre(usuario, "Carlos"); 9console.log(usuario.nombre); // Muestra "Carlos"Salida de Consola!: Ana Carlos
En este ejemplo:
usuarioes un objeto que se pasa como parámetro a la funciónactualizarNombre.- Dentro de la función, cambiamos la propiedad
nombredel objeto. - Como
usuarioes una referencia al mismo objeto, el cambio se refleja fuera de la función.
Paso de Funciones como Parámetros (Funciones Callback)
En JavaScript, las funciones son ciudadanos de primera clase, lo que significa que puedes tratarlas como cualquier otro valor. Esto incluye pasarlas como parámetros a otras funciones.
Una función que se pasa como parámetro a otra función se llama callback. Los callbacks son muy útiles para ejecutar funciones después de que se haya completado una tarea, como cuando se recibe una respuesta de un servidor.
Ejemplo de paso de funciones como parámetros:
1function procesarUsuario(nombre, callback) { 2 console.log("Procesando usuario: " + nombre); 3 callback(nombre); 4} 5 6function mostrarSaludo(nombre) { 7 console.log("¡Hola, " + nombre + "!"); 8} 9 10procesarUsuario("Ana", mostrarSaludo); 11// Muestra "Procesando usuario: Ana" y luego "¡Hola, Ana!"Salida de Consola!: Procesando usuario: Ana ¡Hola, Ana!
En este ejemplo:
mostrarSaludoes una función que se pasa como parámetro (callback) aprocesarUsuario.procesarUsuarioejecutamostrarSaludodespués de procesar el nombre.
Los callbacks son una parte fundamental de la programación asincrónica en JavaScript, y se utilizan ampliamente en eventos, promesas y funciones asíncronas.
Funciones Anónimas y Funciones Flecha como Callbacks
Puedes pasar una función anónima o una función flecha como parámetro directamente dentro de la llamada a otra función.
Ejemplo con función anónima:
1procesarUsuario("Carlos", function(nombre) { 2 console.log("¡Bienvenido, " + nombre + "!"); 3});
Ejemplo con función flecha:
1procesarUsuario("Luis", (nombre) => { 2 console.log("¡Hola de nuevo, " + nombre + "!"); 3});
Ambos ejemplos funcionan de manera similar a los anteriores, pero son más concisos.
Las funciones anónimas y de tipo flecha se usan ampliamente en JavaScript para escribir código más conciso y legible.
Resumen
- Paso de Objetos: Cuando pasas un objeto a una función, se pasa una referencia, por lo que los cambios dentro de la función afectan al objeto original.
- Paso de Funciones (Callbacks): Puedes pasar funciones como parámetros para que se ejecuten dentro de otra función. Esto es útil para ejecutar código en respuesta a eventos o después de que se complete una tarea.
El paso de objetos y funciones como parámetros permite crear código más modular, flexible y reutilizable en JavaScript.
- Loading...
Crea una función llamada procesar que se le pase como parámetro:
- una función de callback
- dos números
La función procesar debe devolver la frase: 'El resultado es: ' junto con el resultado de la función de callback pasándole los dos números como argumentos.
ejemplo: procesar(suma, 7,1) // 'El resultado es: 8' procesar(resta, 10,1) // 'El resultado es: 9'No olvides dejar un espacio despues de la frase El resultado es:
Loading...