Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
3
respuestas

Duda en los parametro de la función

¡Buenas noches!

Tengo una duda sobre los parámetros en las funciones de JavaScript. ¿Puedo nombrarlas como quiera o hay ciertas restricciones, como evitar palabras reservadas o seguir algún criterio específico?

3 respuestas
solución!

¡Hola Kevin, espero que estés bien!

En JavaScript, al nombrar los parámetros de una función, tienes ciertas restricciones que debes tener en cuenta. Debes evitar usar palabras reservadas del lenguaje, ya que estas tienen un significado específico en JavaScript y podrían causar conflictos. Además, es una buena práctica seguir algún criterio específico para nombrar los parámetros, como utilizar camelCase, que es lo que estás aplicando al nombrar tu función asignarTextoElemento.

En el contexto que has compartido, estás aprendiendo sobre la optimización y eficiencia del código, y has creado una función llamada asignarTextoElemento que recibe dos parámetros: elemento y texto. Esta es una excelente práctica, ya que te permite reutilizar la función para diferentes elementos y textos, lo que hace tu código más genérico y fácil de mantener.

Recuerda que al llamar a la función, debes pasar los valores correspondientes a los parámetros, como en el ejemplo que has mencionado: asignarTextoElemento('h1', 'juego del número secreto').

Espero que esta explicación te haya ayudado a aclarar tus dudas sobre los parámetros en las funciones de JavaScript. ¡Sigue practicando y explorando las funciones y listas!

Espero haber ayudado y buenos estudios!

¡Hola Brenda, un gusto saludarte!

Mi duda respecto a los criterios a considerar al nombrar los parámetros ha quedado resuelta, pero me surgió otra duda mientras leía tu respuesta y practicaba.

En JavaScript, ¿existe un límite en la cantidad de parámetros que se pueden pasar a una función, o se pueden agregar de manera ilimitada? He escuchado que, aunque no hay un límite estricto, agregar demasiados parámetros puede hacer que el código sea más difícil de manejar. ¿Es cierto que se recomienda pasar una cantidad moderada de parámetros? ¿ Y cuántos parámetros considerarías viables para que la función siga siendo clara y mantenible sin hacerla demasiado compleja?

Además, si dentro de los parámetros necesito hacer validaciones o condiciones (por ejemplo, comprobar el tipo de un valor o que no esté vacío), ¿debo hacerlo directamente en la definición de los parámetros o esas validaciones deben estar dentro del cuerpo de la función? Si las validaciones se realizan dentro de la función, ¿cuál es la mejor práctica para asegurar que los parámetros sean correctos antes de usarlos en el procesamiento?

Por último, cuando estamos trabajando con el DOM y eventos, ¿siempre se selecciona primero el evento y luego se manipula el elemento que queremos modificar? ¿O este orden de los parámetros puede variar dependiendo de cómo estructuramos la función?

En JavaScript no hay un límite estricto en la cantidad de parámetros que se pueden pasar a una función. Sin embargo, agregar demasiados puede hacer que el código sea difícil de leer y mantener.

En la práctica, se recomienda que una función tenga entre dos y cinco parámetros como máximo. Si se necesitan más, es mejor agruparlos en un objeto para mejorar la claridad.

Ejemplo de función con muchos parámetros:

function createUser(name, age, email, address, phone) {
  // código...
}

Ejemplo usando un objeto para mejorar la legibilidad:

function createUser({ name, age, email, address, phone }) {
  // código...
}

createUser({ name: "Juan", age: 25, email: "juan@example.com", address: "Calle 123", phone: "123456789" });

Respecto a las validaciones de los parámetros, lo recomendable es hacerlas dentro del cuerpo de la función y no en la definición de los parámetros.

Ejemplo de validación dentro de la función:

function processUser(name, age) {
  if (typeof name !== "string" || name.trim() === "") {
    throw new Error("El nombre debe ser un string no vacío.");
  }
  if (typeof age !== "number" || age <= 0) {
    throw new Error("La edad debe ser un número positivo.");
  }

  console.log(`Usuario: ${name}, Edad: ${age}`);
}

processUser("Ana", 25); // Funciona
processUser("", 30); // Error
processUser("Pedro", -5); // Error

Otra forma es usar valores por defecto y manejar errores con try y catch.

Cuando se trabaja con eventos en el DOM, lo común es seguir este orden:

Uno, seleccionar el elementoDos, asignar el eventoTres, manipular el elemento dentro del evento

Ejemplo típico:

const button = document.querySelector("#myButton");

button.addEventListener("click", function () {
  button.style.backgroundColor = "blue";
});

Otra forma usando event target:

document.querySelector("#myButton").addEventListener("click", (event) => {
  event.target.style.backgroundColor = "blue";
});

Aquí event target hace referencia al botón sin necesidad de seleccionarlo antes.

Por lo tanto, no hay límite en los parámetros pero más de cinco puede dificultar la lectura. Se recomienda usar un objeto para manejarlos mejor. Las validaciones deben ir dentro de la función. Al trabajar con el DOM, primero se selecciona el elemento, luego se asigna el evento y después se manipula.