Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

No se aplica ! en un if

En el curso Js en la Web, específicamente en la clase de Fecha de nacimiento, en la parte final de la clase se aplica un if para lanzar un mensaje en caso de que no se cumpla la condición, la cual es la siguiente:

function validarNacimiento(input) {
const fechaCliente = new Date(input.value);
let mensaje = "";
if (!mayorDeEdad(fechaCliente)){
    mensaje = "Debes tener al menos 18 años de edad";
}; 

input.setCustomValidity(mensaje)
}

El problema es que no me lanza el mensaje, creo que el problema es con la aplicación de !, ¡alguien que me pudiera ayudar a resolverlo?

1 respuesta

¡Hola Karen!

Gracias por compartir tu duda con nosotros. Entiendo que estás teniendo un problema con la aplicación del operador "!" en tu condición if. Permíteme explicarte cómo funciona y cómo puedes solucionar tu problema.

En JavaScript, el operador "!" se utiliza para negar una expresión booleana. Es decir, si la expresión es verdadera, el operador "!" la convierte en falsa, y viceversa. En tu caso, estás utilizando el operador "!" para negar el resultado de la función "mayorDeEdad(fechaCliente)". Esto significa que si la función devuelve "true", el operador "!" la convertirá en "false", y si la función devuelve "false", el operador "!" la convertirá en "true".

Si el mensaje no se está lanzando, es posible que el problema no esté relacionado con el operador "!". Te recomendaría verificar si la función "mayorDeEdad(fechaCliente)" está devolviendo el resultado esperado. Puedes hacerlo utilizando la consola de tu navegador para imprimir el resultado de la función y verificar si coincide con tus expectativas.

Aquí tienes un ejemplo de cómo puedes hacerlo:

function mayorDeEdad(fecha) {
  // Aquí va tu lógica para determinar si la persona es mayor de edad o no
}

const fechaCliente = new Date(input.value);
console.log(mayorDeEdad(fechaCliente));

Si la función está devolviendo el resultado esperado, entonces el problema podría estar en otra parte de tu código. Sería útil si pudieras proporcionar más detalles o compartir el código completo para que podamos ayudarte de manera más precisa.

Espero que esta información te sea útil. Si tienes alguna otra pregunta, no dudes en preguntar. ¡Buena suerte con tu aprendizaje!

Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)